diff --git a/TerraFX.Interop.Windows.sln b/TerraFX.Interop.Windows.sln index 213a872ae8..971ae9ee1d 100644 --- a/TerraFX.Interop.Windows.sln +++ b/TerraFX.Interop.Windows.sln @@ -3222,6 +3222,83 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "strsafe", "strsafe", "{569D generation\Windows\shared\strsafe\shared-strsafe.h = generation\Windows\shared\strsafe\shared-strsafe.h EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.foundation", "windows.foundation", "{0A6C98CF-2561-439D-A78D-C8C1E7F19B75}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.foundation\generate.rsp = generation\WinRT\winrt\windows.foundation\generate.rsp + generation\WinRT\winrt\windows.foundation\header.txt = generation\WinRT\winrt\windows.foundation\header.txt + generation\WinRT\winrt\windows.foundation\winrt-windows.foundation.h = generation\WinRT\winrt\windows.foundation\winrt-windows.foundation.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.foundation.metadata", "windows.foundation.metadata", "{BBCA5500-FE50-4970-A019-830C912D9ABE}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.foundation.metadata\generate.rsp = generation\WinRT\winrt\windows.foundation.metadata\generate.rsp + generation\WinRT\winrt\windows.foundation.metadata\header.txt = generation\WinRT\winrt\windows.foundation.metadata\header.txt + generation\WinRT\winrt\windows.foundation.metadata\winrt-windows.foundation.metadata.h = generation\WinRT\winrt\windows.foundation.metadata\winrt-windows.foundation.metadata.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsContracts", "WindowsContracts", "{65B229A2-8DDE-40CB-B600-7A4EE052DD60}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\WindowsContracts\generate.rsp = generation\WinRT\winrt\WindowsContracts\generate.rsp + generation\WinRT\winrt\WindowsContracts\header.txt = generation\WinRT\winrt\WindowsContracts\header.txt + generation\WinRT\winrt\WindowsContracts\winrt-WindowsContracts.h = generation\WinRT\winrt\WindowsContracts\winrt-WindowsContracts.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.foundation.numerics", "windows.foundation.numerics", "{11D48099-EDE0-4F6F-884E-45B0DC0AA6AD}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.foundation.numerics\generate.rsp = generation\WinRT\winrt\windows.foundation.numerics\generate.rsp + generation\WinRT\winrt\windows.foundation.numerics\header.txt = generation\WinRT\winrt\windows.foundation.numerics\header.txt + generation\WinRT\winrt\windows.foundation.numerics\winrt-windows.foundation.numerics.h = generation\WinRT\winrt\windows.foundation.numerics\winrt-windows.foundation.numerics.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.graphics", "windows.graphics", "{32CFDE8C-7D38-4549-B08E-7271102D6503}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.graphics\generate.rsp = generation\WinRT\winrt\windows.graphics\generate.rsp + generation\WinRT\winrt\windows.graphics\header.txt = generation\WinRT\winrt\windows.graphics\header.txt + generation\WinRT\winrt\windows.graphics\winrt-windows.graphics.h = generation\WinRT\winrt\windows.graphics\winrt-windows.graphics.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.graphics.directx", "windows.graphics.directx", "{D9631DB3-5394-4D28-B687-C0524ABC80FC}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.graphics.directx\generate.rsp = generation\WinRT\winrt\windows.graphics.directx\generate.rsp + generation\WinRT\winrt\windows.graphics.directx\header.txt = generation\WinRT\winrt\windows.graphics.directx\header.txt + generation\WinRT\winrt\windows.graphics.directx\winrt-windows.graphics.directx.h = generation\WinRT\winrt\windows.graphics.directx\winrt-windows.graphics.directx.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.graphics.effects", "windows.graphics.effects", "{E1CE167B-DD40-4955-84F0-64D55CAACA00}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.graphics.effects\generate.rsp = generation\WinRT\winrt\windows.graphics.effects\generate.rsp + generation\WinRT\winrt\windows.graphics.effects\header.txt = generation\WinRT\winrt\windows.graphics.effects\header.txt + generation\WinRT\winrt\windows.graphics.effects\winrt-windows.graphics.effects.h = generation\WinRT\winrt\windows.graphics.effects\winrt-windows.graphics.effects.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.ui", "windows.ui", "{7523C542-E0CD-42F9-93C4-B593179B378C}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.ui\generate.rsp = generation\WinRT\winrt\windows.ui\generate.rsp + generation\WinRT\winrt\windows.ui\header.txt = generation\WinRT\winrt\windows.ui\header.txt + generation\WinRT\winrt\windows.ui\winrt-windows.ui.h = generation\WinRT\winrt\windows.ui\winrt-windows.ui.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.devices.haptics", "windows.devices.haptics", "{48C596B5-7E3C-46A8-A0B1-ACC1960234F3}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.devices.haptics\generate.rsp = generation\WinRT\winrt\windows.devices.haptics\generate.rsp + generation\WinRT\winrt\windows.devices.haptics\header.txt = generation\WinRT\winrt\windows.devices.haptics\header.txt + generation\WinRT\winrt\windows.devices.haptics\winrt-windows.devices.haptics.h = generation\WinRT\winrt\windows.devices.haptics\winrt-windows.devices.haptics.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.devices.power", "windows.devices.power", "{B9B6668A-10CD-451A-8B5B-0C0DC12213AD}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.devices.power\generate.rsp = generation\WinRT\winrt\windows.devices.power\generate.rsp + generation\WinRT\winrt\windows.devices.power\header.txt = generation\WinRT\winrt\windows.devices.power\header.txt + generation\WinRT\winrt\windows.devices.power\winrt-windows.devices.power.h = generation\WinRT\winrt\windows.devices.power\winrt-windows.devices.power.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "windows.system.power", "windows.system.power", "{5C9AEBD7-5857-4641-9F8C-D16680230BD9}" + ProjectSection(SolutionItems) = preProject + generation\WinRT\winrt\windows.system.power\generate.rsp = generation\WinRT\winrt\windows.system.power\generate.rsp + generation\WinRT\winrt\windows.system.power\header.txt = generation\WinRT\winrt\windows.system.power\header.txt + generation\WinRT\winrt\windows.system.power\winrt-windows.system.power.h = generation\WinRT\winrt\windows.system.power\winrt-windows.system.power.h + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -3690,6 +3767,17 @@ Global {EA5B695A-5F25-401E-9FD9-23BFDEFBA01B} = {67311E5E-FA9C-43A6-B431-9EF10047A0CE} {5E5D7257-3F63-45F9-899B-CE0DFEFCC2D1} = {D9638FEE-50A4-44FF-B1F6-72E59548490B} {566C5B1B-E5DC-420D-8740-A991751A5D09} = {65954CB3-F28F-4CF0-BC77-0FFD6E858BCE} + {0A6C98CF-2561-439D-A78D-C8C1E7F19B75} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {BBCA5500-FE50-4970-A019-830C912D9ABE} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {65B229A2-8DDE-40CB-B600-7A4EE052DD60} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {11D48099-EDE0-4F6F-884E-45B0DC0AA6AD} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {32CFDE8C-7D38-4549-B08E-7271102D6503} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {D9631DB3-5394-4D28-B687-C0524ABC80FC} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {E1CE167B-DD40-4955-84F0-64D55CAACA00} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {7523C542-E0CD-42F9-93C4-B593179B378C} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {48C596B5-7E3C-46A8-A0B1-ACC1960234F3} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {B9B6668A-10CD-451A-8B5B-0C0DC12213AD} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} + {5C9AEBD7-5857-4641-9F8C-D16680230BD9} = {030D5AC2-A56E-4C79-AD45-5BD6093C8D9A} {635B5075-171E-4AE9-B25D-F2E3C36E2F7E} = {849C4129-3383-468E-9CFA-B709015C0BE2} {10FB9457-4DE3-4E4C-9229-2C3C58D07346} = {67311E5E-FA9C-43A6-B431-9EF10047A0CE} {CA0728D0-571F-48A0-A4A9-4681A76D120C} = {67311E5E-FA9C-43A6-B431-9EF10047A0CE} diff --git a/generation/WinRT/winrt/WindowsContracts/generate.rsp b/generation/WinRT/winrt/WindowsContracts/generate.rsp new file mode 100644 index 0000000000..0266034741 --- /dev/null +++ b/generation/WinRT/winrt/WindowsContracts/generate.rsp @@ -0,0 +1,16 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +--file +winrt-WindowsContracts.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/WindowsContracts +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/WindowsContracts +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/WindowsContracts.h diff --git a/generation/WinRT/winrt/WindowsContracts/header.txt b/generation/WinRT/winrt/WindowsContracts/header.txt new file mode 100644 index 0000000000..504c664a18 --- /dev/null +++ b/generation/WinRT/winrt/WindowsContracts/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/WindowsContracts.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/WindowsContracts/winrt-WindowsContracts.h b/generation/WinRT/winrt/WindowsContracts/winrt-WindowsContracts.h new file mode 100644 index 0000000000..32fea79a57 --- /dev/null +++ b/generation/WinRT/winrt/WindowsContracts/winrt-WindowsContracts.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.devices.haptics/generate.rsp b/generation/WinRT/winrt/windows.devices.haptics/generate.rsp new file mode 100644 index 0000000000..5fe3e8f228 --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.haptics/generate.rsp @@ -0,0 +1,37 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +ABI::Windows::Foundation::Collections::IIterable +ABI::Windows::Foundation::Collections::IIterable +ABI::Windows::Foundation::Collections::IIterator +ABI::Windows::Foundation::Collections::IIterator +ABI::Windows::Foundation::Collections::IVectorView +ABI::Windows::Foundation::Collections::IVectorView +ABI::Windows::Foundation::IAsyncOperation +ABI::Windows::Foundation::IAsyncOperation +ABI::Windows::Foundation::IAsyncOperation *> +ABI::Windows::Foundation::IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IAsyncOperationCompletedHandler *> +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IKnownSimpleHapticsControllerWaveformsStatics +IID_IKnownSimpleHapticsControllerWaveformsStatics2 +IID_ISimpleHapticsController +IID_ISimpleHapticsControllerFeedback +IID_IVibrationDevice +IID_IVibrationDeviceStatics +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.devices.haptics.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.devices.haptics +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.devices.haptics +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.devices.haptics.h diff --git a/generation/WinRT/winrt/windows.devices.haptics/header.txt b/generation/WinRT/winrt/windows.devices.haptics/header.txt new file mode 100644 index 0000000000..adeabb007e --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.haptics/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.devices.haptics/winrt-windows.devices.haptics.h b/generation/WinRT/winrt/windows.devices.haptics/winrt-windows.devices.haptics.h new file mode 100644 index 0000000000..ffd5a14e04 --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.haptics/winrt-windows.devices.haptics.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.devices.power/generate.rsp b/generation/WinRT/winrt/windows.devices.power/generate.rsp new file mode 100644 index 0000000000..a8d39d213c --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.power/generate.rsp @@ -0,0 +1,26 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +ABI::Windows::Foundation::IAsyncOperation +ABI::Windows::Foundation::IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IReference +ABI::Windows::Foundation::ITypedEventHandler +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IBattery +IID_IBatteryReport +IID_IBatteryStatics +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.devices.power.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.devices.power +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.devices.power +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.devices.power.h diff --git a/generation/WinRT/winrt/windows.devices.power/header.txt b/generation/WinRT/winrt/windows.devices.power/header.txt new file mode 100644 index 0000000000..a71034b80f --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.power/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.devices.power/winrt-windows.devices.power.h b/generation/WinRT/winrt/windows.devices.power/winrt-windows.devices.power.h new file mode 100644 index 0000000000..9df4f3ca97 --- /dev/null +++ b/generation/WinRT/winrt/windows.devices.power/winrt-windows.devices.power.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.foundation.metadata/generate.rsp b/generation/WinRT/winrt/windows.foundation.metadata/generate.rsp new file mode 100644 index 0000000000..4a97cd5090 --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.metadata/generate.rsp @@ -0,0 +1,20 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IApiInformationStatics +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.foundation.metadata.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.foundation.metadata +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.foundation.metadata.h diff --git a/generation/WinRT/winrt/windows.foundation.metadata/header.txt b/generation/WinRT/winrt/windows.foundation.metadata/header.txt new file mode 100644 index 0000000000..ef01ba99ab --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.metadata/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.foundation.metadata/winrt-windows.foundation.metadata.h b/generation/WinRT/winrt/windows.foundation.metadata/winrt-windows.foundation.metadata.h new file mode 100644 index 0000000000..84c716eec0 --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.metadata/winrt-windows.foundation.metadata.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.foundation.numerics/generate.rsp b/generation/WinRT/winrt/windows.foundation.numerics/generate.rsp new file mode 100644 index 0000000000..d9d3b30919 --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.numerics/generate.rsp @@ -0,0 +1,19 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.foundation.numerics.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.foundation.numerics +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.foundation.numerics.h diff --git a/generation/WinRT/winrt/windows.foundation.numerics/header.txt b/generation/WinRT/winrt/windows.foundation.numerics/header.txt new file mode 100644 index 0000000000..1acb4c6753 --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.numerics/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.foundation.numerics/winrt-windows.foundation.numerics.h b/generation/WinRT/winrt/windows.foundation.numerics/winrt-windows.foundation.numerics.h new file mode 100644 index 0000000000..6d954aed7f --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation.numerics/winrt-windows.foundation.numerics.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.foundation/generate.rsp b/generation/WinRT/winrt/windows.foundation/generate.rsp new file mode 100644 index 0000000000..cf39f3c17a --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation/generate.rsp @@ -0,0 +1,60 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +ABI::Windows::Foundation::Collections::IIterable *> +ABI::Windows::Foundation::Collections::IIterable *> +ABI::Windows::Foundation::Collections::IIterable +ABI::Windows::Foundation::Collections::IIterator *> +ABI::Windows::Foundation::Collections::IIterator *> +ABI::Windows::Foundation::Collections::IIterator +ABI::Windows::Foundation::Collections::IKeyValuePair +ABI::Windows::Foundation::Collections::IKeyValuePair +ABI::Windows::Foundation::Collections::IMap +ABI::Windows::Foundation::Collections::IMap +ABI::Windows::Foundation::Collections::IMapChangedEventArgs +ABI::Windows::Foundation::Collections::IMapView +ABI::Windows::Foundation::Collections::IMapView +ABI::Windows::Foundation::Collections::IObservableMap +ABI::Windows::Foundation::Collections::IObservableMap +ABI::Windows::Foundation::Collections::IVectorView +ABI::Windows::Foundation::Collections::MapChangedEventHandler +ABI::Windows::Foundation::Collections::MapChangedEventHandler +ABI::Windows::Foundation::ITypedEventHandler +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IAsyncAction +IID_IAsyncActionCompletedHandler +IID_IClosable +IID_IDeferral +IID_IDeferralCompletedHandler +IID_IDeferralFactory +IID_IGetActivationFactory +IID_IGuidHelperStatics +IID_IMemoryBuffer +IID_IMemoryBufferFactory +IID_IMemoryBufferReference +IID_IPropertySet +IID_IPropertyValue +IID_IPropertyValueStatics +IID_IStringable +IID_IUriEscapeStatics +IID_IUriRuntimeClass +IID_IUriRuntimeClassFactory +IID_IUriRuntimeClassWithAbsoluteCanonicalUri +IID_IWwwFormUrlDecoderEntry +IID_IWwwFormUrlDecoderRuntimeClass +IID_IWwwFormUrlDecoderRuntimeClassFactory +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.foundation.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.foundation +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.foundation +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.foundation.h diff --git a/generation/WinRT/winrt/windows.foundation/header.txt b/generation/WinRT/winrt/windows.foundation/header.txt new file mode 100644 index 0000000000..b97f620088 --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.foundation/winrt-windows.foundation.h b/generation/WinRT/winrt/windows.foundation/winrt-windows.foundation.h new file mode 100644 index 0000000000..38ac401aaf --- /dev/null +++ b/generation/WinRT/winrt/windows.foundation/winrt-windows.foundation.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.graphics.directx/generate.rsp b/generation/WinRT/winrt/windows.graphics.directx/generate.rsp new file mode 100644 index 0000000000..897f7b2e98 --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.directx/generate.rsp @@ -0,0 +1,19 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.graphics.directx.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.graphics.directx +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.graphics.directx +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.graphics.directx.h diff --git a/generation/WinRT/winrt/windows.graphics.directx/header.txt b/generation/WinRT/winrt/windows.graphics.directx/header.txt new file mode 100644 index 0000000000..f552abe66f --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.directx/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.directx.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.graphics.directx/winrt-windows.graphics.directx.h b/generation/WinRT/winrt/windows.graphics.directx/winrt-windows.graphics.directx.h new file mode 100644 index 0000000000..ff17d23ea8 --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.directx/winrt-windows.graphics.directx.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.graphics.effects/generate.rsp b/generation/WinRT/winrt/windows.graphics.effects/generate.rsp new file mode 100644 index 0000000000..5fdc1c062d --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.effects/generate.rsp @@ -0,0 +1,21 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IGraphicsEffect +IID_IGraphicsEffectSource +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.graphics.effects.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.graphics.effects +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.graphics.effects +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.graphics.effects.h diff --git a/generation/WinRT/winrt/windows.graphics.effects/header.txt b/generation/WinRT/winrt/windows.graphics.effects/header.txt new file mode 100644 index 0000000000..1f82a3ada1 --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.effects/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.graphics.effects/winrt-windows.graphics.effects.h b/generation/WinRT/winrt/windows.graphics.effects/winrt-windows.graphics.effects.h new file mode 100644 index 0000000000..9ebf5151db --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics.effects/winrt-windows.graphics.effects.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.graphics/generate.rsp b/generation/WinRT/winrt/windows.graphics/generate.rsp new file mode 100644 index 0000000000..0fd3b45fed --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics/generate.rsp @@ -0,0 +1,20 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IGeometrySource2D +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.graphics.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.graphics +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.graphics +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.graphics.h diff --git a/generation/WinRT/winrt/windows.graphics/header.txt b/generation/WinRT/winrt/windows.graphics/header.txt new file mode 100644 index 0000000000..5af3eaf43f --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.graphics/winrt-windows.graphics.h b/generation/WinRT/winrt/windows.graphics/winrt-windows.graphics.h new file mode 100644 index 0000000000..8381338654 --- /dev/null +++ b/generation/WinRT/winrt/windows.graphics/winrt-windows.graphics.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.system.power/generate.rsp b/generation/WinRT/winrt/windows.system.power/generate.rsp new file mode 100644 index 0000000000..4691c107c9 --- /dev/null +++ b/generation/WinRT/winrt/windows.system.power/generate.rsp @@ -0,0 +1,23 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +ABI::Windows::Foundation::IEventHandler +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IBackgroundEnergyManagerStatics +IID_IForegroundEnergyManagerStatics +IID_IPowerManagerStatics +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.system.power.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.system.power +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.system.power +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.system.power.h diff --git a/generation/WinRT/winrt/windows.system.power/header.txt b/generation/WinRT/winrt/windows.system.power/header.txt new file mode 100644 index 0000000000..77e5b8196f --- /dev/null +++ b/generation/WinRT/winrt/windows.system.power/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.system.power/winrt-windows.system.power.h b/generation/WinRT/winrt/windows.system.power/winrt-windows.system.power.h new file mode 100644 index 0000000000..bb37897043 --- /dev/null +++ b/generation/WinRT/winrt/windows.system.power/winrt-windows.system.power.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/WinRT/winrt/windows.ui/generate.rsp b/generation/WinRT/winrt/windows.ui/generate.rsp new file mode 100644 index 0000000000..83f18f3ed6 --- /dev/null +++ b/generation/WinRT/winrt/windows.ui/generate.rsp @@ -0,0 +1,26 @@ +@../../../settings.rsp +@../../../remap.rsp +--exclude +CHECK_NS_PREFIX_STATE +DEPRECATEDENUMERATOR +IID_IColorHelper +IID_IColorHelperStatics +IID_IColorHelperStatics2 +IID_IColors +IID_IColorsStatics +IID_IUIContentRoot +IID_IUIContext +WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION +WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION +--file +winrt-windows.ui.h +--methodClassName +WinRT +--namespace +TerraFX.Interop.WinRT +--output +../../../../sources/Interop/Windows/WinRT/winrt/windows.ui +--test-output +../../../../tests/Interop/Windows/WinRT/winrt/windows.ui +--traverse +C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0/winrt/windows.ui.h diff --git a/generation/WinRT/winrt/windows.ui/header.txt b/generation/WinRT/winrt/windows.ui/header.txt new file mode 100644 index 0000000000..194c710b1c --- /dev/null +++ b/generation/WinRT/winrt/windows.ui/header.txt @@ -0,0 +1,4 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. diff --git a/generation/WinRT/winrt/windows.ui/winrt-windows.ui.h b/generation/WinRT/winrt/windows.ui/winrt-windows.ui.h new file mode 100644 index 0000000000..f5a796c16a --- /dev/null +++ b/generation/WinRT/winrt/windows.ui/winrt-windows.ui.h @@ -0,0 +1,2 @@ +#include "..\..\..\TerraFX.h" +#include diff --git a/generation/remap-types.rsp b/generation/remap-types.rsp index aaa7608af4..13dd3ecceb 100644 --- a/generation/remap-types.rsp +++ b/generation/remap-types.rsp @@ -1,4 +1,40 @@ --remap +ABI::Windows::Foundation::Collections::IIterable=IIterable +ABI::Windows::Foundation::Collections::IIterable=IIterable +ABI::Windows::Foundation::Collections::IIterable *>=IIterable +ABI::Windows::Foundation::Collections::IIterable *>=IIterable +ABI::Windows::Foundation::Collections::IIterable=IIterable +ABI::Windows::Foundation::Collections::IIterator=IIterator +ABI::Windows::Foundation::Collections::IIterator=IIterator +ABI::Windows::Foundation::Collections::IIterator *>=IIterator +ABI::Windows::Foundation::Collections::IIterator *>=IIterator +ABI::Windows::Foundation::Collections::IIterator=IIterator +ABI::Windows::Foundation::Collections::IKeyValuePair=IKeyValuePair +ABI::Windows::Foundation::Collections::IKeyValuePair=IKeyValuePair +ABI::Windows::Foundation::Collections::IMap=IMap +ABI::Windows::Foundation::Collections::IMap=IMap +ABI::Windows::Foundation::Collections::IMapChangedEventArgs=IMapChangedEventArgs +ABI::Windows::Foundation::Collections::IMapView=IMapView +ABI::Windows::Foundation::Collections::IMapView=IMapView +ABI::Windows::Foundation::Collections::IObservableMap=IObservableMap +ABI::Windows::Foundation::Collections::IObservableMap=IObservableMap +ABI::Windows::Foundation::Collections::IVectorView=IVectorView +ABI::Windows::Foundation::Collections::IVectorView=IVectorView +ABI::Windows::Foundation::Collections::IVectorView=IVectorView +ABI::Windows::Foundation::Collections::MapChangedEventHandler=MapChangedEventHandler +ABI::Windows::Foundation::Collections::MapChangedEventHandler=MapChangedEventHandler +ABI::Windows::Foundation::IAsyncOperation=IAsyncOperation +ABI::Windows::Foundation::IAsyncOperation=IAsyncOperation +ABI::Windows::Foundation::IAsyncOperation=IAsyncOperation +ABI::Windows::Foundation::IAsyncOperation *>=IAsyncOperation +ABI::Windows::Foundation::IAsyncOperationCompletedHandler=IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IAsyncOperationCompletedHandler=IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IAsyncOperationCompletedHandler=IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IAsyncOperationCompletedHandler *>=IAsyncOperationCompletedHandler +ABI::Windows::Foundation::IEventHandler=IEventHandler +ABI::Windows::Foundation::IReference=IReference +ABI::Windows::Foundation::ITypedEventHandler=ITypedEventHandler +ABI::Windows::Foundation::ITypedEventHandler=ITypedEventHandler addrinfo=ADDRINFOA addrinfoex2A=ADDRINFOEX2A addrinfoex2W=ADDRINFOEX2W diff --git a/sources/Interop/Windows/WinRT/winrt/WindowsContracts/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/WindowsContracts/WinRT.cs new file mode 100644 index 0000000000..b35bcfbc22 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/WindowsContracts/WinRT.cs @@ -0,0 +1,30 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/WindowsContracts.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("#define WINDOWS_APPLICATIONMODEL_CALLS_CALLSPHONECONTRACT_VERSION 0x70000")] + public const int WINDOWS_APPLICATIONMODEL_CALLS_CALLSPHONECONTRACT_VERSION = 0x70000; + + [NativeTypeName("#define WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION 0x40000")] + public const int WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION = 0x40000; + + [NativeTypeName("#define WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION 0xf0000")] + public const int WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION = 0xf0000; + + [NativeTypeName("#define WINDOWS_NETWORKING_SOCKETS_CONTROLCHANNELTRIGGERCONTRACT_VERSION 0x30000")] + public const int WINDOWS_NETWORKING_SOCKETS_CONTROLCHANNELTRIGGERCONTRACT_VERSION = 0x30000; + + [NativeTypeName("#define WINDOWS_PHONE_PHONECONTRACT_VERSION 0x10000")] + public const int WINDOWS_PHONE_PHONECONTRACT_VERSION = 0x10000; + + [NativeTypeName("#define WINDOWS_PHONE_PHONEINTERNALCONTRACT_VERSION 0x10000")] + public const int WINDOWS_PHONE_PHONEINTERNALCONTRACT_VERSION = 0x10000; + + [NativeTypeName("#define WINDOWS_UI_WEBUI_CORE_WEBUICOMMANDBARCONTRACT_VERSION 0x10000")] + public const int WINDOWS_UI_WEBUI_CORE_WEBUICOMMANDBARCONTRACT_VERSION = 0x10000; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IID.Manual.cs new file mode 100644 index 0000000000..828549b500 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IID.Manual.cs @@ -0,0 +1,152 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IKnownSimpleHapticsControllerWaveformsStatics + { + get + { + ReadOnlySpan data = [ + 0xF7, 0x7E, 0x57, 0x3D, + 0xEE, 0x4C, + 0xE6, 0x11, + 0xB5, + 0x35, + 0x00, + 0x1B, + 0xDC, + 0x06, + 0xAB, + 0x3B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IKnownSimpleHapticsControllerWaveformsStatics2 + { + get + { + ReadOnlySpan data = [ + 0x27, 0x4C, 0xD2, 0xA7, + 0x9D, 0xB7, + 0x0A, 0x51, + 0xBF, + 0x79, + 0xFF, + 0x6D, + 0x49, + 0x17, + 0x3E, + 0x1D + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_ISimpleHapticsController + { + get + { + ReadOnlySpan data = [ + 0xF9, 0x7E, 0x57, 0x3D, + 0xEE, 0x4C, + 0xE6, 0x11, + 0xB5, + 0x35, + 0x00, + 0x1B, + 0xDC, + 0x06, + 0xAB, + 0x3B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_ISimpleHapticsControllerFeedback + { + get + { + ReadOnlySpan data = [ + 0xF8, 0x7E, 0x57, 0x3D, + 0xEE, 0x4C, + 0xE6, 0x11, + 0xB5, + 0x35, + 0x00, + 0x1B, + 0xDC, + 0x06, + 0xAB, + 0x3B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IVibrationDevice + { + get + { + ReadOnlySpan data = [ + 0x3E, 0x1A, 0xF2, 0x40, + 0x44, 0x88, + 0xFF, 0x47, + 0xB3, + 0x12, + 0x06, + 0x18, + 0x5A, + 0x38, + 0x44, + 0xDA + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IVibrationDeviceStatics + { + get + { + ReadOnlySpan data = [ + 0xED, 0xED, 0xE2, 0x53, + 0x90, 0x22, + 0xC9, 0x4A, + 0x8E, + 0xB3, + 0x1A, + 0x84, + 0x12, + 0x2E, + 0xB7, + 0x1C + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics.cs new file mode 100644 index 0000000000..dd76b7abb7 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics.cs @@ -0,0 +1,168 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("3D577EF7-4CEE-11E6-B535-001BDC06AB3B")] +[NativeTypeName("struct IKnownSimpleHapticsControllerWaveformsStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IKnownSimpleHapticsControllerWaveformsStatics : IKnownSimpleHapticsControllerWaveformsStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IKnownSimpleHapticsControllerWaveformsStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Click([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_BuzzContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_RumbleContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_Press([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_Release([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IKnownSimpleHapticsControllerWaveformsStatics*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Click([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(7)] + HRESULT get_BuzzContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(8)] + HRESULT get_RumbleContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(9)] + HRESULT get_Press([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(10)] + HRESULT get_Release([NativeTypeName("UINT16 *")] ushort* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Click; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BuzzContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RumbleContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Press; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Release; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2.cs new file mode 100644 index 0000000000..2db17497fb --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2.cs @@ -0,0 +1,238 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("A7D24C27-B79D-510A-BF79-FF6D49173E1D")] +[NativeTypeName("struct IKnownSimpleHapticsControllerWaveformsStatics2 : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IKnownSimpleHapticsControllerWaveformsStatics2 : IKnownSimpleHapticsControllerWaveformsStatics2.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IKnownSimpleHapticsControllerWaveformsStatics2)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_BrushContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_ChiselMarkerContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_EraserContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_Error([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_GalaxyPenContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT get_Hover([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT get_InkContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT get_MarkerContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT get_PencilContinuous([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT get_Success([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IKnownSimpleHapticsControllerWaveformsStatics2*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_BrushContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(7)] + HRESULT get_ChiselMarkerContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(8)] + HRESULT get_EraserContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(9)] + HRESULT get_Error([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(10)] + HRESULT get_GalaxyPenContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(11)] + HRESULT get_Hover([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(12)] + HRESULT get_InkContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(13)] + HRESULT get_MarkerContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(14)] + HRESULT get_PencilContinuous([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(15)] + HRESULT get_Success([NativeTypeName("UINT16 *")] ushort* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BrushContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_ChiselMarkerContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_EraserContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Error; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_GalaxyPenContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Hover; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_InkContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MarkerContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PencilContinuous; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Success; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsController.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsController.cs new file mode 100644 index 0000000000..8f39bee753 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsController.cs @@ -0,0 +1,252 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("3D577EF9-4CEE-11E6-B535-001BDC06AB3B")] +[NativeTypeName("struct ISimpleHapticsController : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct ISimpleHapticsController : ISimpleHapticsController.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ISimpleHapticsController)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Id(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_SupportedFeedback([NativeTypeName("ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CDevices__CHaptics__CSimpleHapticsControllerFeedback_t **")] IVectorView** value) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[7]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_IsIntensitySupported([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_IsPlayCountSupported([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_IsPlayDurationSupported([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT get_IsReplayPauseIntervalSupported([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT StopFeedback() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT SendHapticFeedback([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), feedback); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT SendHapticFeedbackWithIntensity([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), feedback, intensity); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT SendHapticFeedbackForDuration([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity, [NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan playDuration) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), feedback, intensity, playDuration); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT SendHapticFeedbackForPlayCount([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity, [NativeTypeName("INT32")] int playCount, [NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan replayPauseInterval) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[16]))((ISimpleHapticsController*)Unsafe.AsPointer(ref this), feedback, intensity, playCount, replayPauseInterval); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Id(HSTRING* value); + + [VtblIndex(7)] + HRESULT get_SupportedFeedback([NativeTypeName("ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CDevices__CHaptics__CSimpleHapticsControllerFeedback_t **")] IVectorView** value); + + [VtblIndex(8)] + HRESULT get_IsIntensitySupported([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(9)] + HRESULT get_IsPlayCountSupported([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(10)] + HRESULT get_IsPlayDurationSupported([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(11)] + HRESULT get_IsReplayPauseIntervalSupported([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(12)] + HRESULT StopFeedback(); + + [VtblIndex(13)] + HRESULT SendHapticFeedback([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback); + + [VtblIndex(14)] + HRESULT SendHapticFeedbackWithIntensity([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity); + + [VtblIndex(15)] + HRESULT SendHapticFeedbackForDuration([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity, [NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan playDuration); + + [VtblIndex(16)] + HRESULT SendHapticFeedbackForPlayCount([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *")] ISimpleHapticsControllerFeedback* feedback, double intensity, [NativeTypeName("INT32")] int playCount, [NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan replayPauseInterval); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Id; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CDevices__CHaptics__CSimpleHapticsControllerFeedback_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> get_SupportedFeedback; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IsIntensitySupported; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IsPlayCountSupported; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IsPlayDurationSupported; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IsReplayPauseIntervalSupported; + + [NativeTypeName("HRESULT () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] StopFeedback; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] SendHapticFeedback; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *, DOUBLE) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] SendHapticFeedbackWithIntensity; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *, DOUBLE, ABI::Windows::Foundation::TimeSpan) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] SendHapticFeedbackForDuration; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Haptics::ISimpleHapticsControllerFeedback *, DOUBLE, INT32, ABI::Windows::Foundation::TimeSpan) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] SendHapticFeedbackForPlayCount; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedback.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedback.cs new file mode 100644 index 0000000000..0c685980fe --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedback.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("3D577EF8-4CEE-11E6-B535-001BDC06AB3B")] +[NativeTypeName("struct ISimpleHapticsControllerFeedback : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct ISimpleHapticsControllerFeedback : ISimpleHapticsControllerFeedback.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ISimpleHapticsControllerFeedback)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Waveform([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_Duration([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((ISimpleHapticsControllerFeedback*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Waveform([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(7)] + HRESULT get_Duration([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Waveform; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::TimeSpan *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Duration; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDevice.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDevice.cs new file mode 100644 index 0000000000..da1c1b5ded --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDevice.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("40F21A3E-8844-47FF-B312-06185A3844DA")] +[NativeTypeName("struct IVibrationDevice : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IVibrationDevice : IVibrationDevice.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IVibrationDevice)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IVibrationDevice*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IVibrationDevice*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IVibrationDevice*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IVibrationDevice*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IVibrationDevice*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IVibrationDevice*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Id(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IVibrationDevice*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_SimpleHapticsController([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsController **")] ISimpleHapticsController** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IVibrationDevice*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Id(HSTRING* value); + + [VtblIndex(7)] + HRESULT get_SimpleHapticsController([NativeTypeName("ABI::Windows::Devices::Haptics::ISimpleHapticsController **")] ISimpleHapticsController** value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Id; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Haptics::ISimpleHapticsController **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SimpleHapticsController; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStatics.cs new file mode 100644 index 0000000000..9f8477e18f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStatics.cs @@ -0,0 +1,168 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("53E2EDED-2290-4AC9-8EB3-1A84122EB71C")] +[NativeTypeName("struct IVibrationDeviceStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IVibrationDeviceStatics : IVibrationDeviceStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IVibrationDeviceStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT RequestAccessAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationAccessStatus_t **")] IAsyncOperation** operation) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[6]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), operation); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT GetDeviceSelector(HSTRING* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT FromIdAsync(HSTRING deviceId, [NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[8]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), deviceId, operation); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT GetDefaultAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[9]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), operation); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT FindAllAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[10]))((IVibrationDeviceStatics*)Unsafe.AsPointer(ref this), operation); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT RequestAccessAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationAccessStatus_t **")] IAsyncOperation** operation); + + [VtblIndex(7)] + HRESULT GetDeviceSelector(HSTRING* result); + + [VtblIndex(8)] + HRESULT FromIdAsync(HSTRING deviceId, [NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation); + + [VtblIndex(9)] + HRESULT GetDefaultAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation); + + [VtblIndex(10)] + HRESULT FindAllAsync([NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CHaptics__CVibrationDevice_t **")] IAsyncOperation** operation); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationAccessStatus_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> RequestAccessAsync; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDeviceSelector; + + [NativeTypeName("HRESULT (HSTRING, ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> FromIdAsync; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CHaptics__CVibrationDevice_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> GetDefaultAsync; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CHaptics__CVibrationDevice_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> FindAllAsync; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/VibrationAccessStatus.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/VibrationAccessStatus.cs new file mode 100644 index 0000000000..e5384fa2fc --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/VibrationAccessStatus.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum VibrationAccessStatus +{ + /// + VibrationAccessStatus_Allowed = 0, + + /// + VibrationAccessStatus_DeniedByUser = 1, + + /// + VibrationAccessStatus_DeniedBySystem = 2, + + /// + VibrationAccessStatus_DeniedByEnergySaver = 3, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/WinRT.cs new file mode 100644 index 0000000000..bd2ee8454b --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.haptics/WinRT.cs @@ -0,0 +1,39 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[70]")] + public const string InterfaceName_Windows_Devices_Haptics_IKnownSimpleHapticsControllerWaveformsStatics = "Windows.Devices.Haptics.IKnownSimpleHapticsControllerWaveformsStatics"; + + [NativeTypeName("const WCHAR[71]")] + public const string InterfaceName_Windows_Devices_Haptics_IKnownSimpleHapticsControllerWaveformsStatics2 = "Windows.Devices.Haptics.IKnownSimpleHapticsControllerWaveformsStatics2"; + + [NativeTypeName("const WCHAR[49]")] + public const string InterfaceName_Windows_Devices_Haptics_ISimpleHapticsController = "Windows.Devices.Haptics.ISimpleHapticsController"; + + [NativeTypeName("const WCHAR[57]")] + public const string InterfaceName_Windows_Devices_Haptics_ISimpleHapticsControllerFeedback = "Windows.Devices.Haptics.ISimpleHapticsControllerFeedback"; + + [NativeTypeName("const WCHAR[41]")] + public const string InterfaceName_Windows_Devices_Haptics_IVibrationDevice = "Windows.Devices.Haptics.IVibrationDevice"; + + [NativeTypeName("const WCHAR[48]")] + public const string InterfaceName_Windows_Devices_Haptics_IVibrationDeviceStatics = "Windows.Devices.Haptics.IVibrationDeviceStatics"; + + [NativeTypeName("const WCHAR[62]")] + public const string RuntimeClass_Windows_Devices_Haptics_KnownSimpleHapticsControllerWaveforms = "Windows.Devices.Haptics.KnownSimpleHapticsControllerWaveforms"; + + [NativeTypeName("const WCHAR[48]")] + public const string RuntimeClass_Windows_Devices_Haptics_SimpleHapticsController = "Windows.Devices.Haptics.SimpleHapticsController"; + + [NativeTypeName("const WCHAR[56]")] + public const string RuntimeClass_Windows_Devices_Haptics_SimpleHapticsControllerFeedback = "Windows.Devices.Haptics.SimpleHapticsControllerFeedback"; + + [NativeTypeName("const WCHAR[40]")] + public const string RuntimeClass_Windows_Devices_Haptics_VibrationDevice = "Windows.Devices.Haptics.VibrationDevice"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBattery.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBattery.cs new file mode 100644 index 0000000000..ea741fd50e --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBattery.cs @@ -0,0 +1,154 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("BC894FC6-0072-47C8-8B5D-614AAA7A437E")] +[NativeTypeName("struct IBattery : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IBattery : IBattery.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IBattery)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IBattery*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IBattery*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IBattery*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IBattery*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IBattery*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IBattery*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_DeviceId(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IBattery*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT GetReport([NativeTypeName("ABI::Windows::Devices::Power::IBatteryReport **")] IBatteryReport** result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IBattery*)Unsafe.AsPointer(ref this), result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT add_ReportUpdated([NativeTypeName("ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CDevices__CPower__CBattery_IInspectable_t *")] ITypedEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[8]))((IBattery*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT remove_ReportUpdated(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IBattery*)Unsafe.AsPointer(ref this), token); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_DeviceId(HSTRING* value); + + [VtblIndex(7)] + HRESULT GetReport([NativeTypeName("ABI::Windows::Devices::Power::IBatteryReport **")] IBatteryReport** result); + + [VtblIndex(8)] + HRESULT add_ReportUpdated([NativeTypeName("ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CDevices__CPower__CBattery_IInspectable_t *")] ITypedEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(9)] + HRESULT remove_ReportUpdated(EventRegistrationToken token); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DeviceId; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Power::IBatteryReport **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetReport; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CDevices__CPower__CBattery_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_ReportUpdated; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_ReportUpdated; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReport.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReport.cs new file mode 100644 index 0000000000..0a1a27c011 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReport.cs @@ -0,0 +1,168 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("C9858C3A-4E13-420A-A8D0-24F18F395401")] +[NativeTypeName("struct IBatteryReport : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IBatteryReport : IBatteryReport.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IBatteryReport)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IBatteryReport*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IBatteryReport*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IBatteryReport*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IBatteryReport*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IBatteryReport*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IBatteryReport*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_ChargeRateInMilliwatts([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[6]))((IBatteryReport*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_DesignCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[7]))((IBatteryReport*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_FullChargeCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[8]))((IBatteryReport*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_RemainingCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[9]))((IBatteryReport*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_Status([NativeTypeName("ABI::Windows::System::Power::BatteryStatus *")] BatteryStatus* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IBatteryReport*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_ChargeRateInMilliwatts([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value); + + [VtblIndex(7)] + HRESULT get_DesignCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value); + + [VtblIndex(8)] + HRESULT get_FullChargeCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value); + + [VtblIndex(9)] + HRESULT get_RemainingCapacityInMilliwattHours([NativeTypeName("ABI::Windows::Foundation::__FIReference_1_int_t **")] IReference** value); + + [VtblIndex(10)] + HRESULT get_Status([NativeTypeName("ABI::Windows::System::Power::BatteryStatus *")] BatteryStatus* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIReference_1_int_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> get_ChargeRateInMilliwatts; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIReference_1_int_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> get_DesignCapacityInMilliwattHours; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIReference_1_int_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> get_FullChargeCapacityInMilliwattHours; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIReference_1_int_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> get_RemainingCapacityInMilliwattHours; + + [NativeTypeName("HRESULT (ABI::Windows::System::Power::BatteryStatus *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Status; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStatics.cs new file mode 100644 index 0000000000..1fa71179dd --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStatics.cs @@ -0,0 +1,140 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("79CD72B6-9E5E-4452-BEA6-DFCD541E597F")] +[NativeTypeName("struct IBatteryStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IBatteryStatics : IBatteryStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IBatteryStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IBatteryStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IBatteryStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IBatteryStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IBatteryStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IBatteryStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IBatteryStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_AggregateBattery([NativeTypeName("ABI::Windows::Devices::Power::IBattery **")] IBattery** result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IBatteryStatics*)Unsafe.AsPointer(ref this), result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT FromIdAsync(HSTRING deviceId, [NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CPower__CBattery_t **")] IAsyncOperation** result) + { + return ((delegate* unmanaged[MemberFunction]**, int>)(lpVtbl[7]))((IBatteryStatics*)Unsafe.AsPointer(ref this), deviceId, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT GetDeviceSelector(HSTRING* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IBatteryStatics*)Unsafe.AsPointer(ref this), result); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_AggregateBattery([NativeTypeName("ABI::Windows::Devices::Power::IBattery **")] IBattery** result); + + [VtblIndex(7)] + HRESULT FromIdAsync(HSTRING deviceId, [NativeTypeName("ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CPower__CBattery_t **")] IAsyncOperation** result); + + [VtblIndex(8)] + HRESULT GetDeviceSelector(HSTRING* result); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Devices::Power::IBattery **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_AggregateBattery; + + [NativeTypeName("HRESULT (HSTRING, ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CPower__CBattery_t **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]**, int> FromIdAsync; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDeviceSelector; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IID.Manual.cs new file mode 100644 index 0000000000..0bbdb1e334 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/IID.Manual.cs @@ -0,0 +1,83 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IBattery + { + get + { + ReadOnlySpan data = [ + 0xC6, 0x4F, 0x89, 0xBC, + 0x72, 0x00, + 0xC8, 0x47, + 0x8B, + 0x5D, + 0x61, + 0x4A, + 0xAA, + 0x7A, + 0x43, + 0x7E + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IBatteryReport + { + get + { + ReadOnlySpan data = [ + 0x3A, 0x8C, 0x85, 0xC9, + 0x13, 0x4E, + 0x0A, 0x42, + 0xA8, + 0xD0, + 0x24, + 0xF1, + 0x8F, + 0x39, + 0x54, + 0x01 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IBatteryStatics + { + get + { + ReadOnlySpan data = [ + 0xB6, 0x72, 0xCD, 0x79, + 0x5E, 0x9E, + 0x52, 0x44, + 0xBE, + 0xA6, + 0xDF, + 0xCD, + 0x54, + 0x1E, + 0x59, + 0x7F + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.devices.power/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/WinRT.cs new file mode 100644 index 0000000000..44da411e87 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.devices.power/WinRT.cs @@ -0,0 +1,24 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[31]")] + public const string InterfaceName_Windows_Devices_Power_IBattery = "Windows.Devices.Power.IBattery"; + + [NativeTypeName("const WCHAR[37]")] + public const string InterfaceName_Windows_Devices_Power_IBatteryReport = "Windows.Devices.Power.IBatteryReport"; + + [NativeTypeName("const WCHAR[38]")] + public const string InterfaceName_Windows_Devices_Power_IBatteryStatics = "Windows.Devices.Power.IBatteryStatics"; + + [NativeTypeName("const WCHAR[30]")] + public const string RuntimeClass_Windows_Devices_Power_Battery = "Windows.Devices.Power.Battery"; + + [NativeTypeName("const WCHAR[36]")] + public const string RuntimeClass_Windows_Devices_Power_BatteryReport = "Windows.Devices.Power.BatteryReport"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.collections/IIterable`1.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.collections/IIterable`1.Manual.cs new file mode 100644 index 0000000000..d6cfa10d3c --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.collections/IIterable`1.Manual.cs @@ -0,0 +1,62 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.collections.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; + +namespace TerraFX.Interop.WinRT; + +[Guid("FAA585EA-6214-4217-AFDA-7F46DE5869B3")] +public unsafe partial struct IIterable + where T : unmanaged +{ + public void** lpVtbl; + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, [NativeTypeName("void **")] void** ppvObject) + { + return ((delegate* unmanaged*, Guid*, void**, int>)(lpVtbl[0]))((IIterable*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged*, uint>)(lpVtbl[1]))((IIterable*)Unsafe.AsPointer(ref this)); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged*, uint>)(lpVtbl[2]))((IIterable*)Unsafe.AsPointer(ref this)); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged*, uint*, Guid**, int>)(lpVtbl[3]))((IIterable*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged*, HSTRING*, int>)(lpVtbl[4]))((IIterable*)Unsafe.AsPointer(ref this), className); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public HRESULT GetTrustLevel([NativeTypeName("TrustLevel *")] TrustLevel* trustLevel) + { + return ((delegate* unmanaged*, TrustLevel*, int>)(lpVtbl[5]))((IIterable*)Unsafe.AsPointer(ref this), trustLevel); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public HRESULT First([NativeTypeName("IIterator **")] IIterator** first) + { + return ((delegate* unmanaged*, IIterator**, int>)(lpVtbl[6]))((IIterable*)Unsafe.AsPointer(ref this), first); + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/GCPressureAmount.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/GCPressureAmount.cs new file mode 100644 index 0000000000..af188e8bd2 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/GCPressureAmount.cs @@ -0,0 +1,19 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum GCPressureAmount +{ + /// + GCPressureAmount_Low = 0, + + /// + GCPressureAmount_Medium = 1, + + /// + GCPressureAmount_High = 2, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStatics.cs new file mode 100644 index 0000000000..fcfdafad6f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStatics.cs @@ -0,0 +1,238 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("997439FE-F681-4A11-B416-C13A47E8BA36")] +[NativeTypeName("struct IApiInformationStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IApiInformationStatics : IApiInformationStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IApiInformationStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IApiInformationStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IApiInformationStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT IsTypePresent(HSTRING typeName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT IsMethodPresent(HSTRING typeName, HSTRING methodName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, methodName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT IsMethodPresentWithArity(HSTRING typeName, HSTRING methodName, [NativeTypeName("UINT32")] uint inputParameterCount, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, methodName, inputParameterCount, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT IsEventPresent(HSTRING typeName, HSTRING eventName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, eventName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT IsPropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, propertyName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT IsReadOnlyPropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, propertyName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT IsWriteablePropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), typeName, propertyName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT IsEnumNamedValuePresent(HSTRING enumTypeName, HSTRING valueName, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), enumTypeName, valueName, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT IsApiContractPresentByMajor(HSTRING contractName, [NativeTypeName("UINT16")] ushort majorVersion, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), contractName, majorVersion, result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT IsApiContractPresentByMajorAndMinor(HSTRING contractName, [NativeTypeName("UINT16")] ushort majorVersion, [NativeTypeName("UINT16")] ushort minorVersion, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IApiInformationStatics*)Unsafe.AsPointer(ref this), contractName, majorVersion, minorVersion, result); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT IsTypePresent(HSTRING typeName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(7)] + HRESULT IsMethodPresent(HSTRING typeName, HSTRING methodName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(8)] + HRESULT IsMethodPresentWithArity(HSTRING typeName, HSTRING methodName, [NativeTypeName("UINT32")] uint inputParameterCount, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(9)] + HRESULT IsEventPresent(HSTRING typeName, HSTRING eventName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(10)] + HRESULT IsPropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(11)] + HRESULT IsReadOnlyPropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(12)] + HRESULT IsWriteablePropertyPresent(HSTRING typeName, HSTRING propertyName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(13)] + HRESULT IsEnumNamedValuePresent(HSTRING enumTypeName, HSTRING valueName, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(14)] + HRESULT IsApiContractPresentByMajor(HSTRING contractName, [NativeTypeName("UINT16")] ushort majorVersion, [NativeTypeName("boolean *")] byte* result); + + [VtblIndex(15)] + HRESULT IsApiContractPresentByMajorAndMinor(HSTRING contractName, [NativeTypeName("UINT16")] ushort majorVersion, [NativeTypeName("UINT16")] ushort minorVersion, [NativeTypeName("boolean *")] byte* result); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsTypePresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsMethodPresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, UINT32, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsMethodPresentWithArity; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsEventPresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsPropertyPresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsReadOnlyPropertyPresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsWriteablePropertyPresent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsEnumNamedValuePresent; + + [NativeTypeName("HRESULT (HSTRING, UINT16, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsApiContractPresentByMajor; + + [NativeTypeName("HRESULT (HSTRING, UINT16, UINT16, boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] IsApiContractPresentByMajorAndMinor; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IID.Manual.cs new file mode 100644 index 0000000000..3ab8b3601c --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IID.Manual.cs @@ -0,0 +1,37 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IApiInformationStatics + { + get + { + ReadOnlySpan data = [ + 0xFE, 0x39, 0x74, 0x99, + 0x81, 0xF6, + 0x11, 0x4A, + 0xB4, + 0x16, + 0xC1, + 0x3A, + 0x47, + 0xE8, + 0xBA, + 0x36 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/WinRT.cs new file mode 100644 index 0000000000..c287bb39b1 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.metadata/WinRT.cs @@ -0,0 +1,15 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[51]")] + public const string InterfaceName_Windows_Foundation_Metadata_IApiInformationStatics = "Windows.Foundation.Metadata.IApiInformationStatics"; + + [NativeTypeName("const WCHAR[43]")] + public const string RuntimeClass_Windows_Foundation_Metadata_ApiInformation = "Windows.Foundation.Metadata.ApiInformation"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix3x2.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix3x2.cs new file mode 100644 index 0000000000..f7fb0a301c --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix3x2.cs @@ -0,0 +1,28 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Matrix3x2 +{ + /// + public float M11; + + /// + public float M12; + + /// + public float M21; + + /// + public float M22; + + /// + public float M31; + + /// + public float M32; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix4x4.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix4x4.cs new file mode 100644 index 0000000000..5a0e73e552 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Matrix4x4.cs @@ -0,0 +1,58 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Matrix4x4 +{ + /// + public float M11; + + /// + public float M12; + + /// + public float M13; + + /// + public float M14; + + /// + public float M21; + + /// + public float M22; + + /// + public float M23; + + /// + public float M24; + + /// + public float M31; + + /// + public float M32; + + /// + public float M33; + + /// + public float M34; + + /// + public float M41; + + /// + public float M42; + + /// + public float M43; + + /// + public float M44; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Plane.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Plane.cs new file mode 100644 index 0000000000..75de232477 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Plane.cs @@ -0,0 +1,17 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Plane +{ + /// + [NativeTypeName("ABI::Windows::Foundation::Numerics::Vector3")] + public Vector3 Normal; + + /// + public float D; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Quaternion.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Quaternion.cs new file mode 100644 index 0000000000..d7e402e0d6 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Quaternion.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Quaternion +{ + /// + public float X; + + /// + public float Y; + + /// + public float Z; + + /// + public float W; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Rational.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Rational.cs new file mode 100644 index 0000000000..6d5dbeda29 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Rational.cs @@ -0,0 +1,18 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Rational +{ + /// + [NativeTypeName("UINT32")] + public uint Numerator; + + /// + [NativeTypeName("UINT32")] + public uint Denominator; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector2.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector2.cs new file mode 100644 index 0000000000..0f118f0f66 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector2.cs @@ -0,0 +1,16 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Vector2 +{ + /// + public float X; + + /// + public float Y; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector3.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector3.cs new file mode 100644 index 0000000000..ec855d32d3 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector3.cs @@ -0,0 +1,19 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Vector3 +{ + /// + public float X; + + /// + public float Y; + + /// + public float Z; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector4.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector4.cs new file mode 100644 index 0000000000..a625b8a5cf --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation.numerics/Vector4.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.numerics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Vector4 +{ + /// + public float X; + + /// + public float Y; + + /// + public float Z; + + /// + public float W; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/DateTime.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/DateTime.cs new file mode 100644 index 0000000000..f5d9dbcb84 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/DateTime.cs @@ -0,0 +1,14 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct DateTime +{ + /// + [NativeTypeName("INT64")] + public long UniversalTime; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncAction.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncAction.cs new file mode 100644 index 0000000000..6d540f1313 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncAction.cs @@ -0,0 +1,140 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("5A648006-843A-4DA9-865B-9D26E5DFAD7B")] +[NativeTypeName("struct IAsyncAction : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IAsyncAction : IAsyncAction.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IAsyncAction)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IAsyncAction*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IAsyncAction*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IAsyncAction*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IAsyncAction*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IAsyncAction*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IAsyncAction*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT put_Completed([NativeTypeName("ABI::Windows::Foundation::IAsyncActionCompletedHandler *")] IAsyncActionCompletedHandler* handler) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IAsyncAction*)Unsafe.AsPointer(ref this), handler); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_Completed([NativeTypeName("ABI::Windows::Foundation::IAsyncActionCompletedHandler **")] IAsyncActionCompletedHandler** handler) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IAsyncAction*)Unsafe.AsPointer(ref this), handler); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT GetResults() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IAsyncAction*)Unsafe.AsPointer(ref this)); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT put_Completed([NativeTypeName("ABI::Windows::Foundation::IAsyncActionCompletedHandler *")] IAsyncActionCompletedHandler* handler); + + [VtblIndex(7)] + HRESULT get_Completed([NativeTypeName("ABI::Windows::Foundation::IAsyncActionCompletedHandler **")] IAsyncActionCompletedHandler** handler); + + [VtblIndex(8)] + HRESULT GetResults(); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IAsyncActionCompletedHandler *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] put_Completed; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IAsyncActionCompletedHandler **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Completed; + + [NativeTypeName("HRESULT () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetResults; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandler.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandler.cs new file mode 100644 index 0000000000..9f7aa1459d --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandler.cs @@ -0,0 +1,79 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("A4ED5C81-76C9-40BD-8BE6-B1D90FB20AE7")] +[NativeTypeName("struct IAsyncActionCompletedHandler : IUnknown")] +[NativeInheritance("IUnknown")] +public unsafe partial struct IAsyncActionCompletedHandler : IAsyncActionCompletedHandler.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IAsyncActionCompletedHandler)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IAsyncActionCompletedHandler*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IAsyncActionCompletedHandler*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IAsyncActionCompletedHandler*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT Invoke([NativeTypeName("ABI::Windows::Foundation::IAsyncAction *")] IAsyncAction* asyncInfo, [NativeTypeName("ABI::Windows::Foundation::AsyncStatus")] AsyncStatus asyncStatus) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IAsyncActionCompletedHandler*)Unsafe.AsPointer(ref this), asyncInfo, asyncStatus); + } + + public interface Interface : IUnknown.Interface + { + [VtblIndex(3)] + HRESULT Invoke([NativeTypeName("ABI::Windows::Foundation::IAsyncAction *")] IAsyncAction* asyncInfo, [NativeTypeName("ABI::Windows::Foundation::AsyncStatus")] AsyncStatus asyncStatus); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IAsyncAction *, AsyncStatus) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Invoke; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IClosable.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IClosable.cs new file mode 100644 index 0000000000..35de3ff0f9 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IClosable.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("30D5A829-7FA4-4026-83BB-D75BAE4EA99E")] +[NativeTypeName("struct IClosable : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IClosable : IClosable.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IClosable)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IClosable*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IClosable*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IClosable*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IClosable*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IClosable*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IClosable*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT Close() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IClosable*)Unsafe.AsPointer(ref this)); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT Close(); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Close; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferral.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferral.cs new file mode 100644 index 0000000000..ddbf62ba65 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferral.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("D6269732-3B7F-46A7-B40B-4FDCA2A2C693")] +[NativeTypeName("struct IDeferral : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IDeferral : IDeferral.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IDeferral)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IDeferral*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IDeferral*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IDeferral*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IDeferral*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IDeferral*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IDeferral*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT Complete() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IDeferral*)Unsafe.AsPointer(ref this)); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT Complete(); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Complete; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandler.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandler.cs new file mode 100644 index 0000000000..12a1f5d916 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandler.cs @@ -0,0 +1,79 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("ED32A372-F3C8-4FAA-9CFB-470148DA3888")] +[NativeTypeName("struct IDeferralCompletedHandler : IUnknown")] +[NativeInheritance("IUnknown")] +public unsafe partial struct IDeferralCompletedHandler : IDeferralCompletedHandler.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IDeferralCompletedHandler)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IDeferralCompletedHandler*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IDeferralCompletedHandler*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IDeferralCompletedHandler*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT Invoke() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IDeferralCompletedHandler*)Unsafe.AsPointer(ref this)); + } + + public interface Interface : IUnknown.Interface + { + [VtblIndex(3)] + HRESULT Invoke(); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Invoke; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactory.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactory.cs new file mode 100644 index 0000000000..75fd7ed2bf --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactory.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("65A1ECC5-3FB5-4832-8CA9-F061B281D13A")] +[NativeTypeName("struct IDeferralFactory : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IDeferralFactory : IDeferralFactory.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IDeferralFactory)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IDeferralFactory*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IDeferralFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IDeferralFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IDeferralFactory*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IDeferralFactory*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IDeferralFactory*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT Create([NativeTypeName("ABI::Windows::Foundation::IDeferralCompletedHandler *")] IDeferralCompletedHandler* handler, [NativeTypeName("ABI::Windows::Foundation::IDeferral **")] IDeferral** result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IDeferralFactory*)Unsafe.AsPointer(ref this), handler, result); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT Create([NativeTypeName("ABI::Windows::Foundation::IDeferralCompletedHandler *")] IDeferralCompletedHandler* handler, [NativeTypeName("ABI::Windows::Foundation::IDeferral **")] IDeferral** result); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IDeferralCompletedHandler *, ABI::Windows::Foundation::IDeferral **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Create; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactory.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactory.cs new file mode 100644 index 0000000000..d2b145fe04 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactory.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("4EDB8EE2-96DD-49A7-94F7-4607DDAB8E3C")] +[NativeTypeName("struct IGetActivationFactory : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IGetActivationFactory : IGetActivationFactory.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IGetActivationFactory)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IGetActivationFactory*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IGetActivationFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IGetActivationFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IGetActivationFactory*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IGetActivationFactory*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IGetActivationFactory*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT GetActivationFactory(HSTRING activatableClassId, IInspectable** factory) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IGetActivationFactory*)Unsafe.AsPointer(ref this), activatableClassId, factory); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT GetActivationFactory(HSTRING activatableClassId, IInspectable** factory); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetActivationFactory; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStatics.cs new file mode 100644 index 0000000000..a41a46c20b --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStatics.cs @@ -0,0 +1,140 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("59C7966B-AE52-5283-AD7F-A1B9E9678ADD")] +[NativeTypeName("struct IGuidHelperStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IGuidHelperStatics : IGuidHelperStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IGuidHelperStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT CreateNewGuid(Guid* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), result); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_Empty(Guid* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT Equals([NativeTypeName("const GUID *")] Guid* target, [NativeTypeName("const GUID *")] Guid* value, [NativeTypeName("boolean *")] byte* result) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IGuidHelperStatics*)Unsafe.AsPointer(ref this), target, value, result); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT CreateNewGuid(Guid* result); + + [VtblIndex(7)] + HRESULT get_Empty(Guid* value); + + [VtblIndex(8)] + HRESULT Equals([NativeTypeName("const GUID *")] Guid* target, [NativeTypeName("const GUID *")] Guid* value, [NativeTypeName("boolean *")] byte* result); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (GUID *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateNewGuid; + + [NativeTypeName("HRESULT (GUID *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Empty; + + [NativeTypeName("HRESULT (const GUID *, const GUID *, boolean *) __attribute__((stdcall))")] + public new delegate* unmanaged[MemberFunction] Equals; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IID.Manual.cs new file mode 100644 index 0000000000..91260e2640 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IID.Manual.cs @@ -0,0 +1,520 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IAsyncActionCompletedHandler + { + get + { + ReadOnlySpan data = [ + 0x81, 0x5C, 0xED, 0xA4, + 0xC9, 0x76, + 0xBD, 0x40, + 0x8B, + 0xE6, + 0xB1, + 0xD9, + 0x0F, + 0xB2, + 0x0A, + 0xE7 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IDeferralCompletedHandler + { + get + { + ReadOnlySpan data = [ + 0x72, 0xA3, 0x32, 0xED, + 0xC8, 0xF3, + 0xAA, 0x4F, + 0x9C, + 0xFB, + 0x47, + 0x01, + 0x48, + 0xDA, + 0x38, + 0x88 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IPropertySet + { + get + { + ReadOnlySpan data = [ + 0x9F, 0xED, 0x43, 0x8A, + 0xE6, 0xF4, + 0x21, 0x44, + 0xAC, + 0xF9, + 0x1D, + 0xAB, + 0x29, + 0x86, + 0x82, + 0x0C + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IAsyncAction + { + get + { + ReadOnlySpan data = [ + 0x06, 0x80, 0x64, 0x5A, + 0x3A, 0x84, + 0xA9, 0x4D, + 0x86, + 0x5B, + 0x9D, + 0x26, + 0xE5, + 0xDF, + 0xAD, + 0x7B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IClosable + { + get + { + ReadOnlySpan data = [ + 0x29, 0xA8, 0xD5, 0x30, + 0xA4, 0x7F, + 0x26, 0x40, + 0x83, + 0xBB, + 0xD7, + 0x5B, + 0xAE, + 0x4E, + 0xA9, + 0x9E + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IDeferral + { + get + { + ReadOnlySpan data = [ + 0x32, 0x97, 0x26, 0xD6, + 0x7F, 0x3B, + 0xA7, 0x46, + 0xB4, + 0x0B, + 0x4F, + 0xDC, + 0xA2, + 0xA2, + 0xC6, + 0x93 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IDeferralFactory + { + get + { + ReadOnlySpan data = [ + 0xC5, 0xEC, 0xA1, 0x65, + 0xB5, 0x3F, + 0x32, 0x48, + 0x8C, + 0xA9, + 0xF0, + 0x61, + 0xB2, + 0x81, + 0xD1, + 0x3A + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IGetActivationFactory + { + get + { + ReadOnlySpan data = [ + 0xE2, 0x8E, 0xDB, 0x4E, + 0xDD, 0x96, + 0xA7, 0x49, + 0x94, + 0xF7, + 0x46, + 0x07, + 0xDD, + 0xAB, + 0x8E, + 0x3C + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IGuidHelperStatics + { + get + { + ReadOnlySpan data = [ + 0x6B, 0x96, 0xC7, 0x59, + 0x52, 0xAE, + 0x83, 0x52, + 0xAD, + 0x7F, + 0xA1, + 0xB9, + 0xE9, + 0x67, + 0x8A, + 0xDD + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IMemoryBuffer + { + get + { + ReadOnlySpan data = [ + 0x2A, 0xDD, 0xC4, 0xFB, + 0x5B, 0x24, + 0xE4, 0x11, + 0xAF, + 0x98, + 0x68, + 0x94, + 0x23, + 0x26, + 0x0C, + 0xF8 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IMemoryBufferFactory + { + get + { + ReadOnlySpan data = [ + 0x2B, 0xDD, 0xC4, 0xFB, + 0x5B, 0x24, + 0xE4, 0x11, + 0xAF, + 0x98, + 0x68, + 0x94, + 0x23, + 0x26, + 0x0C, + 0xF8 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IMemoryBufferReference + { + get + { + ReadOnlySpan data = [ + 0x29, 0xDD, 0xC4, 0xFB, + 0x5B, 0x24, + 0xE4, 0x11, + 0xAF, + 0x98, + 0x68, + 0x94, + 0x23, + 0x26, + 0x0C, + 0xF8 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IPropertyValue + { + get + { + ReadOnlySpan data = [ + 0xDD, 0x82, 0xD6, 0x4B, + 0x54, 0x75, + 0xE9, 0x40, + 0x9A, + 0x9B, + 0x82, + 0x65, + 0x4E, + 0xDE, + 0x7E, + 0x62 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IPropertyValueStatics + { + get + { + ReadOnlySpan data = [ + 0xC8, 0xDB, 0x9B, 0x62, + 0x32, 0xD9, + 0xF4, 0x4F, + 0x96, + 0xB9, + 0x8D, + 0x96, + 0xC5, + 0xC1, + 0xE8, + 0x58 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IStringable + { + get + { + ReadOnlySpan data = [ + 0x54, 0x9F, 0x36, 0x96, + 0xB6, 0x8E, + 0xF0, 0x48, + 0xAB, + 0xCE, + 0xC1, + 0xB2, + 0x11, + 0xE6, + 0x27, + 0xC3 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUriEscapeStatics + { + get + { + ReadOnlySpan data = [ + 0xBA, 0x32, 0xD4, 0xC1, + 0x24, 0xC8, + 0x52, 0x44, + 0xA7, + 0xFD, + 0x51, + 0x2B, + 0xC3, + 0xBB, + 0xE9, + 0xA1 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUriRuntimeClass + { + get + { + ReadOnlySpan data = [ + 0x57, 0x5E, 0x36, 0x9E, + 0xB2, 0x48, + 0x60, 0x41, + 0x95, + 0x6F, + 0xC7, + 0x38, + 0x51, + 0x20, + 0xBB, + 0xFC + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUriRuntimeClassFactory + { + get + { + ReadOnlySpan data = [ + 0x6F, 0x79, 0xA9, 0x44, + 0x3E, 0x72, + 0xDF, 0x4F, + 0xA2, + 0x18, + 0x03, + 0x3E, + 0x75, + 0xB0, + 0xC0, + 0x84 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUriRuntimeClassWithAbsoluteCanonicalUri + { + get + { + ReadOnlySpan data = [ + 0x61, 0x96, 0x8D, 0x75, + 0x1C, 0x22, + 0x0F, 0x48, + 0xA3, + 0x39, + 0x50, + 0x65, + 0x66, + 0x73, + 0xF4, + 0x6F + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IWwwFormUrlDecoderEntry + { + get + { + ReadOnlySpan data = [ + 0x31, 0x74, 0x5E, 0x12, + 0x78, 0xF6, + 0x8E, 0x4E, + 0xB6, + 0x70, + 0x20, + 0xA9, + 0xB0, + 0x6C, + 0x51, + 0x2D + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IWwwFormUrlDecoderRuntimeClass + { + get + { + ReadOnlySpan data = [ + 0x51, 0x04, 0x5A, 0xD4, + 0x25, 0xF2, + 0x42, 0x45, + 0x92, + 0x96, + 0x0E, + 0x1D, + 0xF5, + 0xD2, + 0x54, + 0xDF + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IWwwFormUrlDecoderRuntimeClassFactory + { + get + { + ReadOnlySpan data = [ + 0x3D, 0x6B, 0x8C, 0x5B, + 0xAE, 0x24, + 0xB5, 0x41, + 0xA1, + 0xBF, + 0xF0, + 0xC3, + 0xD5, + 0x44, + 0x84, + 0x5B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBuffer.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBuffer.cs new file mode 100644 index 0000000000..5854bc3d0f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBuffer.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("FBC4DD2A-245B-11E4-AF98-689423260CF8")] +[NativeTypeName("struct IMemoryBuffer : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IMemoryBuffer : IMemoryBuffer.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IMemoryBuffer)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IMemoryBuffer*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IMemoryBuffer*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IMemoryBuffer*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IMemoryBuffer*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IMemoryBuffer*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IMemoryBuffer*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT CreateReference([NativeTypeName("ABI::Windows::Foundation::IMemoryBufferReference **")] IMemoryBufferReference** reference) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IMemoryBuffer*)Unsafe.AsPointer(ref this), reference); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT CreateReference([NativeTypeName("ABI::Windows::Foundation::IMemoryBufferReference **")] IMemoryBufferReference** reference); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IMemoryBufferReference **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateReference; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactory.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactory.cs new file mode 100644 index 0000000000..9ad33539b0 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactory.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("FBC4DD2B-245B-11E4-AF98-689423260CF8")] +[NativeTypeName("struct IMemoryBufferFactory : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IMemoryBufferFactory : IMemoryBufferFactory.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IMemoryBufferFactory)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT Create([NativeTypeName("UINT32")] uint capacity, [NativeTypeName("ABI::Windows::Foundation::IMemoryBuffer **")] IMemoryBuffer** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IMemoryBufferFactory*)Unsafe.AsPointer(ref this), capacity, value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT Create([NativeTypeName("UINT32")] uint capacity, [NativeTypeName("ABI::Windows::Foundation::IMemoryBuffer **")] IMemoryBuffer** value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::IMemoryBuffer **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Create; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReference.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReference.cs new file mode 100644 index 0000000000..38989d2c9b --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReference.cs @@ -0,0 +1,140 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("FBC4DD29-245B-11E4-AF98-689423260CF8")] +[NativeTypeName("struct IMemoryBufferReference : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IMemoryBufferReference : IMemoryBufferReference.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IMemoryBufferReference)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Capacity([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT add_Closed([NativeTypeName("ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_t *")] ITypedEventHandler* handler, EventRegistrationToken* cookie) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[7]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), handler, cookie); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT remove_Closed(EventRegistrationToken cookie) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IMemoryBufferReference*)Unsafe.AsPointer(ref this), cookie); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Capacity([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(7)] + HRESULT add_Closed([NativeTypeName("ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_t *")] ITypedEventHandler* handler, EventRegistrationToken* cookie); + + [VtblIndex(8)] + HRESULT remove_Closed(EventRegistrationToken cookie); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Capacity; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_Closed; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_Closed; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySet.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySet.cs new file mode 100644 index 0000000000..1c2d64d7cd --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySet.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("8A43ED9F-F4E6-4421-ACF9-1DAB2986820C")] +[NativeTypeName("struct IPropertySet : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IPropertySet : IPropertySet.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IPropertySet)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IPropertySet*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IPropertySet*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IPropertySet*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IPropertySet*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IPropertySet*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IPropertySet*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValue.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValue.cs new file mode 100644 index 0000000000..5a4e09115f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValue.cs @@ -0,0 +1,644 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("4BD682DD-7554-40E9-9A9B-82654EDE7E62")] +[NativeTypeName("struct IPropertyValue : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IPropertyValue : IPropertyValue.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IPropertyValue)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IPropertyValue*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IPropertyValue*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IPropertyValue*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IPropertyValue*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IPropertyValue*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IPropertyValue*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Type([NativeTypeName("ABI::Windows::Foundation::PropertyType *")] PropertyType* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_IsNumericScalar([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT GetUInt8(byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT GetInt16([NativeTypeName("INT16 *")] short* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT GetUInt16([NativeTypeName("UINT16 *")] ushort* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT GetInt32([NativeTypeName("INT32 *")] int* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT GetUInt32([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT GetInt64([NativeTypeName("INT64 *")] long* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT GetUInt64([NativeTypeName("UINT64 *")] ulong* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT GetSingle(float* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT GetDouble(double* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[16]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + public HRESULT GetChar16([NativeTypeName("WCHAR *")] char* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(18)] + public HRESULT GetBoolean([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[18]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(19)] + public HRESULT GetString(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[19]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(20)] + public HRESULT GetGuid(Guid* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[20]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(21)] + public HRESULT GetDateTime([NativeTypeName("ABI::Windows::Foundation::DateTime *")] DateTime* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[21]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(22)] + public HRESULT GetTimeSpan([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[22]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(23)] + public HRESULT GetPoint([NativeTypeName("ABI::Windows::Foundation::Point *")] Point* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[23]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(24)] + public HRESULT GetSize([NativeTypeName("ABI::Windows::Foundation::Size *")] Size* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[24]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(25)] + public HRESULT GetRect([NativeTypeName("ABI::Windows::Foundation::Rect *")] Rect* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[25]))((IPropertyValue*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(26)] + public HRESULT GetUInt8Array([NativeTypeName("UINT32 *")] uint* valueLength, byte** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[26]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(27)] + public HRESULT GetInt16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT16 **")] short** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[27]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(28)] + public HRESULT GetUInt16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT16 **")] ushort** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[28]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(29)] + public HRESULT GetInt32Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT32 **")] int** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[29]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(30)] + public HRESULT GetUInt32Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT32 **")] uint** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[30]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(31)] + public HRESULT GetInt64Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT64 **")] long** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[31]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(32)] + public HRESULT GetUInt64Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT64 **")] ulong** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[32]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(33)] + public HRESULT GetSingleArray([NativeTypeName("UINT32 *")] uint* valueLength, float** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[33]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(34)] + public HRESULT GetDoubleArray([NativeTypeName("UINT32 *")] uint* valueLength, double** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[34]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(35)] + public HRESULT GetChar16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("WCHAR **")] char** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[35]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(36)] + public HRESULT GetBooleanArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("boolean **")] byte** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[36]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(37)] + public HRESULT GetStringArray([NativeTypeName("UINT32 *")] uint* valueLength, HSTRING** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[37]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(38)] + public HRESULT GetInspectableArray([NativeTypeName("UINT32 *")] uint* valueLength, IInspectable*** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[38]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(39)] + public HRESULT GetGuidArray([NativeTypeName("UINT32 *")] uint* valueLength, Guid** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[39]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(40)] + public HRESULT GetDateTimeArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::DateTime **")] DateTime** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[40]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(41)] + public HRESULT GetTimeSpanArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::TimeSpan **")] TimeSpan** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[41]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(42)] + public HRESULT GetPointArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Point **")] Point** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[42]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(43)] + public HRESULT GetSizeArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Size **")] Size** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[43]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(44)] + public HRESULT GetRectArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Rect **")] Rect** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[44]))((IPropertyValue*)Unsafe.AsPointer(ref this), valueLength, value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Type([NativeTypeName("ABI::Windows::Foundation::PropertyType *")] PropertyType* value); + + [VtblIndex(7)] + HRESULT get_IsNumericScalar([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(8)] + HRESULT GetUInt8(byte* value); + + [VtblIndex(9)] + HRESULT GetInt16([NativeTypeName("INT16 *")] short* value); + + [VtblIndex(10)] + HRESULT GetUInt16([NativeTypeName("UINT16 *")] ushort* value); + + [VtblIndex(11)] + HRESULT GetInt32([NativeTypeName("INT32 *")] int* value); + + [VtblIndex(12)] + HRESULT GetUInt32([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(13)] + HRESULT GetInt64([NativeTypeName("INT64 *")] long* value); + + [VtblIndex(14)] + HRESULT GetUInt64([NativeTypeName("UINT64 *")] ulong* value); + + [VtblIndex(15)] + HRESULT GetSingle(float* value); + + [VtblIndex(16)] + HRESULT GetDouble(double* value); + + [VtblIndex(17)] + HRESULT GetChar16([NativeTypeName("WCHAR *")] char* value); + + [VtblIndex(18)] + HRESULT GetBoolean([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(19)] + HRESULT GetString(HSTRING* value); + + [VtblIndex(20)] + HRESULT GetGuid(Guid* value); + + [VtblIndex(21)] + HRESULT GetDateTime([NativeTypeName("ABI::Windows::Foundation::DateTime *")] DateTime* value); + + [VtblIndex(22)] + HRESULT GetTimeSpan([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value); + + [VtblIndex(23)] + HRESULT GetPoint([NativeTypeName("ABI::Windows::Foundation::Point *")] Point* value); + + [VtblIndex(24)] + HRESULT GetSize([NativeTypeName("ABI::Windows::Foundation::Size *")] Size* value); + + [VtblIndex(25)] + HRESULT GetRect([NativeTypeName("ABI::Windows::Foundation::Rect *")] Rect* value); + + [VtblIndex(26)] + HRESULT GetUInt8Array([NativeTypeName("UINT32 *")] uint* valueLength, byte** value); + + [VtblIndex(27)] + HRESULT GetInt16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT16 **")] short** value); + + [VtblIndex(28)] + HRESULT GetUInt16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT16 **")] ushort** value); + + [VtblIndex(29)] + HRESULT GetInt32Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT32 **")] int** value); + + [VtblIndex(30)] + HRESULT GetUInt32Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT32 **")] uint** value); + + [VtblIndex(31)] + HRESULT GetInt64Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("INT64 **")] long** value); + + [VtblIndex(32)] + HRESULT GetUInt64Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("UINT64 **")] ulong** value); + + [VtblIndex(33)] + HRESULT GetSingleArray([NativeTypeName("UINT32 *")] uint* valueLength, float** value); + + [VtblIndex(34)] + HRESULT GetDoubleArray([NativeTypeName("UINT32 *")] uint* valueLength, double** value); + + [VtblIndex(35)] + HRESULT GetChar16Array([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("WCHAR **")] char** value); + + [VtblIndex(36)] + HRESULT GetBooleanArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("boolean **")] byte** value); + + [VtblIndex(37)] + HRESULT GetStringArray([NativeTypeName("UINT32 *")] uint* valueLength, HSTRING** value); + + [VtblIndex(38)] + HRESULT GetInspectableArray([NativeTypeName("UINT32 *")] uint* valueLength, IInspectable*** value); + + [VtblIndex(39)] + HRESULT GetGuidArray([NativeTypeName("UINT32 *")] uint* valueLength, Guid** value); + + [VtblIndex(40)] + HRESULT GetDateTimeArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::DateTime **")] DateTime** value); + + [VtblIndex(41)] + HRESULT GetTimeSpanArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::TimeSpan **")] TimeSpan** value); + + [VtblIndex(42)] + HRESULT GetPointArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Point **")] Point** value); + + [VtblIndex(43)] + HRESULT GetSizeArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Size **")] Size** value); + + [VtblIndex(44)] + HRESULT GetRectArray([NativeTypeName("UINT32 *")] uint* valueLength, [NativeTypeName("ABI::Windows::Foundation::Rect **")] Rect** value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::PropertyType *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Type; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IsNumericScalar; + + [NativeTypeName("HRESULT (BYTE *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt8; + + [NativeTypeName("HRESULT (INT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt16; + + [NativeTypeName("HRESULT (UINT16 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt16; + + [NativeTypeName("HRESULT (INT32 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt32; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt32; + + [NativeTypeName("HRESULT (INT64 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt64; + + [NativeTypeName("HRESULT (UINT64 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt64; + + [NativeTypeName("HRESULT (FLOAT *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetSingle; + + [NativeTypeName("HRESULT (DOUBLE *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDouble; + + [NativeTypeName("HRESULT (WCHAR *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetChar16; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetBoolean; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetString; + + [NativeTypeName("HRESULT (GUID *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetGuid; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::DateTime *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDateTime; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::TimeSpan *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTimeSpan; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Point *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetPoint; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Size *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetSize; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Rect *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRect; + + [NativeTypeName("HRESULT (UINT32 *, BYTE **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt8Array; + + [NativeTypeName("HRESULT (UINT32 *, INT16 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt16Array; + + [NativeTypeName("HRESULT (UINT32 *, UINT16 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt16Array; + + [NativeTypeName("HRESULT (UINT32 *, INT32 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt32Array; + + [NativeTypeName("HRESULT (UINT32 *, UINT32 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt32Array; + + [NativeTypeName("HRESULT (UINT32 *, INT64 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInt64Array; + + [NativeTypeName("HRESULT (UINT32 *, UINT64 **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetUInt64Array; + + [NativeTypeName("HRESULT (UINT32 *, FLOAT **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetSingleArray; + + [NativeTypeName("HRESULT (UINT32 *, DOUBLE **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDoubleArray; + + [NativeTypeName("HRESULT (UINT32 *, WCHAR **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetChar16Array; + + [NativeTypeName("HRESULT (UINT32 *, boolean **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetBooleanArray; + + [NativeTypeName("HRESULT (UINT32 *, HSTRING **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetStringArray; + + [NativeTypeName("HRESULT (UINT32 *, IInspectable ***) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetInspectableArray; + + [NativeTypeName("HRESULT (UINT32 *, GUID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetGuidArray; + + [NativeTypeName("HRESULT (UINT32 *, ABI::Windows::Foundation::DateTime **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetDateTimeArray; + + [NativeTypeName("HRESULT (UINT32 *, ABI::Windows::Foundation::TimeSpan **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTimeSpanArray; + + [NativeTypeName("HRESULT (UINT32 *, ABI::Windows::Foundation::Point **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetPointArray; + + [NativeTypeName("HRESULT (UINT32 *, ABI::Windows::Foundation::Size **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetSizeArray; + + [NativeTypeName("HRESULT (UINT32 *, ABI::Windows::Foundation::Rect **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRectArray; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStatics.cs new file mode 100644 index 0000000000..fc8bd1ed43 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStatics.cs @@ -0,0 +1,644 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("629BDBC8-D932-4FF4-96B9-8D96C5C1E858")] +[NativeTypeName("struct IPropertyValueStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IPropertyValueStatics : IPropertyValueStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IPropertyValueStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT CreateEmpty(IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT CreateUInt8(byte value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT CreateInt16([NativeTypeName("INT16")] short value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT CreateUInt16([NativeTypeName("UINT16")] ushort value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT CreateInt32([NativeTypeName("INT32")] int value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT CreateUInt32([NativeTypeName("UINT32")] uint value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT CreateInt64([NativeTypeName("INT64")] long value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT CreateUInt64([NativeTypeName("UINT64")] ulong value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT CreateSingle(float value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT CreateDouble(double value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT CreateChar16([NativeTypeName("WCHAR")] char value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[16]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + public HRESULT CreateBoolean([NativeTypeName("boolean")] byte value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(18)] + public HRESULT CreateString(HSTRING value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[18]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(19)] + public HRESULT CreateInspectable(IInspectable* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[19]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(20)] + public HRESULT CreateGuid(Guid value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[20]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(21)] + public HRESULT CreateDateTime([NativeTypeName("ABI::Windows::Foundation::DateTime")] DateTime value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[21]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(22)] + public HRESULT CreateTimeSpan([NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[22]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(23)] + public HRESULT CreatePoint([NativeTypeName("ABI::Windows::Foundation::Point")] Point value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[23]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(24)] + public HRESULT CreateSize([NativeTypeName("ABI::Windows::Foundation::Size")] Size value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[24]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(25)] + public HRESULT CreateRect([NativeTypeName("ABI::Windows::Foundation::Rect")] Rect value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[25]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(26)] + public HRESULT CreateUInt8Array([NativeTypeName("UINT32")] uint valueLength, byte* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[26]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(27)] + public HRESULT CreateInt16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT16 *")] short* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[27]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(28)] + public HRESULT CreateUInt16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT16 *")] ushort* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[28]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(29)] + public HRESULT CreateInt32Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT32 *")] int* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[29]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(30)] + public HRESULT CreateUInt32Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT32 *")] uint* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[30]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(31)] + public HRESULT CreateInt64Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT64 *")] long* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[31]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(32)] + public HRESULT CreateUInt64Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT64 *")] ulong* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[32]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(33)] + public HRESULT CreateSingleArray([NativeTypeName("UINT32")] uint valueLength, float* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[33]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(34)] + public HRESULT CreateDoubleArray([NativeTypeName("UINT32")] uint valueLength, double* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[34]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(35)] + public HRESULT CreateChar16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("WCHAR *")] char* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[35]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(36)] + public HRESULT CreateBooleanArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("boolean *")] byte* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[36]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(37)] + public HRESULT CreateStringArray([NativeTypeName("UINT32")] uint valueLength, HSTRING* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[37]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(38)] + public HRESULT CreateInspectableArray([NativeTypeName("UINT32")] uint valueLength, IInspectable** value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[38]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(39)] + public HRESULT CreateGuidArray([NativeTypeName("UINT32")] uint valueLength, Guid* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[39]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(40)] + public HRESULT CreateDateTimeArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::DateTime *")] DateTime* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[40]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(41)] + public HRESULT CreateTimeSpanArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[41]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(42)] + public HRESULT CreatePointArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Point *")] Point* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[42]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(43)] + public HRESULT CreateSizeArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Size *")] Size* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[43]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(44)] + public HRESULT CreateRectArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Rect *")] Rect* value, IInspectable** propertyValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[44]))((IPropertyValueStatics*)Unsafe.AsPointer(ref this), valueLength, value, propertyValue); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT CreateEmpty(IInspectable** propertyValue); + + [VtblIndex(7)] + HRESULT CreateUInt8(byte value, IInspectable** propertyValue); + + [VtblIndex(8)] + HRESULT CreateInt16([NativeTypeName("INT16")] short value, IInspectable** propertyValue); + + [VtblIndex(9)] + HRESULT CreateUInt16([NativeTypeName("UINT16")] ushort value, IInspectable** propertyValue); + + [VtblIndex(10)] + HRESULT CreateInt32([NativeTypeName("INT32")] int value, IInspectable** propertyValue); + + [VtblIndex(11)] + HRESULT CreateUInt32([NativeTypeName("UINT32")] uint value, IInspectable** propertyValue); + + [VtblIndex(12)] + HRESULT CreateInt64([NativeTypeName("INT64")] long value, IInspectable** propertyValue); + + [VtblIndex(13)] + HRESULT CreateUInt64([NativeTypeName("UINT64")] ulong value, IInspectable** propertyValue); + + [VtblIndex(14)] + HRESULT CreateSingle(float value, IInspectable** propertyValue); + + [VtblIndex(15)] + HRESULT CreateDouble(double value, IInspectable** propertyValue); + + [VtblIndex(16)] + HRESULT CreateChar16([NativeTypeName("WCHAR")] char value, IInspectable** propertyValue); + + [VtblIndex(17)] + HRESULT CreateBoolean([NativeTypeName("boolean")] byte value, IInspectable** propertyValue); + + [VtblIndex(18)] + HRESULT CreateString(HSTRING value, IInspectable** propertyValue); + + [VtblIndex(19)] + HRESULT CreateInspectable(IInspectable* value, IInspectable** propertyValue); + + [VtblIndex(20)] + HRESULT CreateGuid(Guid value, IInspectable** propertyValue); + + [VtblIndex(21)] + HRESULT CreateDateTime([NativeTypeName("ABI::Windows::Foundation::DateTime")] DateTime value, IInspectable** propertyValue); + + [VtblIndex(22)] + HRESULT CreateTimeSpan([NativeTypeName("ABI::Windows::Foundation::TimeSpan")] TimeSpan value, IInspectable** propertyValue); + + [VtblIndex(23)] + HRESULT CreatePoint([NativeTypeName("ABI::Windows::Foundation::Point")] Point value, IInspectable** propertyValue); + + [VtblIndex(24)] + HRESULT CreateSize([NativeTypeName("ABI::Windows::Foundation::Size")] Size value, IInspectable** propertyValue); + + [VtblIndex(25)] + HRESULT CreateRect([NativeTypeName("ABI::Windows::Foundation::Rect")] Rect value, IInspectable** propertyValue); + + [VtblIndex(26)] + HRESULT CreateUInt8Array([NativeTypeName("UINT32")] uint valueLength, byte* value, IInspectable** propertyValue); + + [VtblIndex(27)] + HRESULT CreateInt16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT16 *")] short* value, IInspectable** propertyValue); + + [VtblIndex(28)] + HRESULT CreateUInt16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT16 *")] ushort* value, IInspectable** propertyValue); + + [VtblIndex(29)] + HRESULT CreateInt32Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT32 *")] int* value, IInspectable** propertyValue); + + [VtblIndex(30)] + HRESULT CreateUInt32Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT32 *")] uint* value, IInspectable** propertyValue); + + [VtblIndex(31)] + HRESULT CreateInt64Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("INT64 *")] long* value, IInspectable** propertyValue); + + [VtblIndex(32)] + HRESULT CreateUInt64Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("UINT64 *")] ulong* value, IInspectable** propertyValue); + + [VtblIndex(33)] + HRESULT CreateSingleArray([NativeTypeName("UINT32")] uint valueLength, float* value, IInspectable** propertyValue); + + [VtblIndex(34)] + HRESULT CreateDoubleArray([NativeTypeName("UINT32")] uint valueLength, double* value, IInspectable** propertyValue); + + [VtblIndex(35)] + HRESULT CreateChar16Array([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("WCHAR *")] char* value, IInspectable** propertyValue); + + [VtblIndex(36)] + HRESULT CreateBooleanArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("boolean *")] byte* value, IInspectable** propertyValue); + + [VtblIndex(37)] + HRESULT CreateStringArray([NativeTypeName("UINT32")] uint valueLength, HSTRING* value, IInspectable** propertyValue); + + [VtblIndex(38)] + HRESULT CreateInspectableArray([NativeTypeName("UINT32")] uint valueLength, IInspectable** value, IInspectable** propertyValue); + + [VtblIndex(39)] + HRESULT CreateGuidArray([NativeTypeName("UINT32")] uint valueLength, Guid* value, IInspectable** propertyValue); + + [VtblIndex(40)] + HRESULT CreateDateTimeArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::DateTime *")] DateTime* value, IInspectable** propertyValue); + + [VtblIndex(41)] + HRESULT CreateTimeSpanArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value, IInspectable** propertyValue); + + [VtblIndex(42)] + HRESULT CreatePointArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Point *")] Point* value, IInspectable** propertyValue); + + [VtblIndex(43)] + HRESULT CreateSizeArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Size *")] Size* value, IInspectable** propertyValue); + + [VtblIndex(44)] + HRESULT CreateRectArray([NativeTypeName("UINT32")] uint valueLength, [NativeTypeName("ABI::Windows::Foundation::Rect *")] Rect* value, IInspectable** propertyValue); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateEmpty; + + [NativeTypeName("HRESULT (BYTE, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt8; + + [NativeTypeName("HRESULT (INT16, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt16; + + [NativeTypeName("HRESULT (UINT16, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt16; + + [NativeTypeName("HRESULT (INT32, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt32; + + [NativeTypeName("HRESULT (UINT32, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt32; + + [NativeTypeName("HRESULT (INT64, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt64; + + [NativeTypeName("HRESULT (UINT64, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt64; + + [NativeTypeName("HRESULT (FLOAT, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateSingle; + + [NativeTypeName("HRESULT (DOUBLE, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateDouble; + + [NativeTypeName("HRESULT (WCHAR, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateChar16; + + [NativeTypeName("HRESULT (boolean, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateBoolean; + + [NativeTypeName("HRESULT (HSTRING, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateString; + + [NativeTypeName("HRESULT (IInspectable *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInspectable; + + [NativeTypeName("HRESULT (GUID, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateGuid; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::DateTime, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateDateTime; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::TimeSpan, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateTimeSpan; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Point, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreatePoint; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Size, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateSize; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::Rect, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateRect; + + [NativeTypeName("HRESULT (UINT32, BYTE *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt8Array; + + [NativeTypeName("HRESULT (UINT32, INT16 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt16Array; + + [NativeTypeName("HRESULT (UINT32, UINT16 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt16Array; + + [NativeTypeName("HRESULT (UINT32, INT32 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt32Array; + + [NativeTypeName("HRESULT (UINT32, UINT32 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt32Array; + + [NativeTypeName("HRESULT (UINT32, INT64 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInt64Array; + + [NativeTypeName("HRESULT (UINT32, UINT64 *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUInt64Array; + + [NativeTypeName("HRESULT (UINT32, FLOAT *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateSingleArray; + + [NativeTypeName("HRESULT (UINT32, DOUBLE *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateDoubleArray; + + [NativeTypeName("HRESULT (UINT32, WCHAR *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateChar16Array; + + [NativeTypeName("HRESULT (UINT32, boolean *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateBooleanArray; + + [NativeTypeName("HRESULT (UINT32, HSTRING *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateStringArray; + + [NativeTypeName("HRESULT (UINT32, IInspectable **, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateInspectableArray; + + [NativeTypeName("HRESULT (UINT32, GUID *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateGuidArray; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::DateTime *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateDateTimeArray; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::TimeSpan *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateTimeSpanArray; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::Point *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreatePointArray; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::Size *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateSizeArray; + + [NativeTypeName("HRESULT (UINT32, ABI::Windows::Foundation::Rect *, IInspectable **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateRectArray; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IStringable.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IStringable.cs new file mode 100644 index 0000000000..8c792f96aa --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IStringable.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("96369F54-8EB6-48F0-ABCE-C1B211E627C3")] +[NativeTypeName("struct IStringable : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IStringable : IStringable.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IStringable)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IStringable*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IStringable*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IStringable*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IStringable*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IStringable*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IStringable*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT ToString(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IStringable*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT ToString(HSTRING* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public new delegate* unmanaged[MemberFunction] ToString; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStatics.cs new file mode 100644 index 0000000000..3259befdae --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStatics.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("C1D432BA-C824-4452-A7FD-512BC3BBE9A1")] +[NativeTypeName("struct IUriEscapeStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUriEscapeStatics : IUriEscapeStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUriEscapeStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT UnescapeComponent(HSTRING toUnescape, HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), toUnescape, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT EscapeComponent(HSTRING toEscape, HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IUriEscapeStatics*)Unsafe.AsPointer(ref this), toEscape, value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT UnescapeComponent(HSTRING toUnescape, HSTRING* value); + + [VtblIndex(7)] + HRESULT EscapeComponent(HSTRING toEscape, HSTRING* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] UnescapeComponent; + + [NativeTypeName("HRESULT (HSTRING, HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] EscapeComponent; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClass.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClass.cs new file mode 100644 index 0000000000..23a756be03 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClass.cs @@ -0,0 +1,336 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("9E365E57-48B2-4160-956F-C7385120BBFC")] +[NativeTypeName("struct IUriRuntimeClass : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUriRuntimeClass : IUriRuntimeClass.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUriRuntimeClass)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_AbsoluteUri(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_DisplayUri(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_Domain(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_Extension(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_Fragment(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT get_Host(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT get_Password(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT get_Path(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT get_Query(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT get_QueryParsed([NativeTypeName("ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **")] IWwwFormUrlDecoderRuntimeClass** ppWwwFormUrlDecoder) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), ppWwwFormUrlDecoder); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT get_RawUri(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[16]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + public HRESULT get_SchemeName(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(18)] + public HRESULT get_UserName(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[18]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(19)] + public HRESULT get_Port([NativeTypeName("INT32 *")] int* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[19]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(20)] + public HRESULT get_Suspicious([NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[20]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(21)] + public HRESULT Equals([NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass *")] IUriRuntimeClass* pUri, [NativeTypeName("boolean *")] byte* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[21]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), pUri, value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(22)] + public HRESULT CombineUri(HSTRING relativeUri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[22]))((IUriRuntimeClass*)Unsafe.AsPointer(ref this), relativeUri, instance); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_AbsoluteUri(HSTRING* value); + + [VtblIndex(7)] + HRESULT get_DisplayUri(HSTRING* value); + + [VtblIndex(8)] + HRESULT get_Domain(HSTRING* value); + + [VtblIndex(9)] + HRESULT get_Extension(HSTRING* value); + + [VtblIndex(10)] + HRESULT get_Fragment(HSTRING* value); + + [VtblIndex(11)] + HRESULT get_Host(HSTRING* value); + + [VtblIndex(12)] + HRESULT get_Password(HSTRING* value); + + [VtblIndex(13)] + HRESULT get_Path(HSTRING* value); + + [VtblIndex(14)] + HRESULT get_Query(HSTRING* value); + + [VtblIndex(15)] + HRESULT get_QueryParsed([NativeTypeName("ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **")] IWwwFormUrlDecoderRuntimeClass** ppWwwFormUrlDecoder); + + [VtblIndex(16)] + HRESULT get_RawUri(HSTRING* value); + + [VtblIndex(17)] + HRESULT get_SchemeName(HSTRING* value); + + [VtblIndex(18)] + HRESULT get_UserName(HSTRING* value); + + [VtblIndex(19)] + HRESULT get_Port([NativeTypeName("INT32 *")] int* value); + + [VtblIndex(20)] + HRESULT get_Suspicious([NativeTypeName("boolean *")] byte* value); + + [VtblIndex(21)] + HRESULT Equals([NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass *")] IUriRuntimeClass* pUri, [NativeTypeName("boolean *")] byte* value); + + [VtblIndex(22)] + HRESULT CombineUri(HSTRING relativeUri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_AbsoluteUri; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DisplayUri; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Domain; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Extension; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Fragment; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Host; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Password; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Path; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Query; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_QueryParsed; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RawUri; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SchemeName; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_UserName; + + [NativeTypeName("HRESULT (INT32 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Port; + + [NativeTypeName("HRESULT (boolean *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Suspicious; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::IUriRuntimeClass *, boolean *) __attribute__((stdcall))")] + public new delegate* unmanaged[MemberFunction] Equals; + + [NativeTypeName("HRESULT (HSTRING, ABI::Windows::Foundation::IUriRuntimeClass **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CombineUri; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactory.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactory.cs new file mode 100644 index 0000000000..cad75fc5b2 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactory.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("44A9796F-723E-4FDF-A218-033E75B0C084")] +[NativeTypeName("struct IUriRuntimeClassFactory : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUriRuntimeClassFactory : IUriRuntimeClassFactory.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUriRuntimeClassFactory)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT CreateUri(HSTRING uri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), uri, instance); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT CreateWithRelativeUri(HSTRING baseUri, HSTRING relativeUri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IUriRuntimeClassFactory*)Unsafe.AsPointer(ref this), baseUri, relativeUri, instance); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT CreateUri(HSTRING uri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance); + + [VtblIndex(7)] + HRESULT CreateWithRelativeUri(HSTRING baseUri, HSTRING relativeUri, [NativeTypeName("ABI::Windows::Foundation::IUriRuntimeClass **")] IUriRuntimeClass** instance); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, ABI::Windows::Foundation::IUriRuntimeClass **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateUri; + + [NativeTypeName("HRESULT (HSTRING, HSTRING, ABI::Windows::Foundation::IUriRuntimeClass **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateWithRelativeUri; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUri.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUri.cs new file mode 100644 index 0000000000..696475dd5a --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUri.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("758D9661-221C-480F-A339-50656673F46F")] +[NativeTypeName("struct IUriRuntimeClassWithAbsoluteCanonicalUri : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUriRuntimeClassWithAbsoluteCanonicalUri : IUriRuntimeClassWithAbsoluteCanonicalUri.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUriRuntimeClassWithAbsoluteCanonicalUri)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_AbsoluteCanonicalUri(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_DisplayIri(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IUriRuntimeClassWithAbsoluteCanonicalUri*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_AbsoluteCanonicalUri(HSTRING* value); + + [VtblIndex(7)] + HRESULT get_DisplayIri(HSTRING* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_AbsoluteCanonicalUri; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DisplayIri; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntry.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntry.cs new file mode 100644 index 0000000000..4fcd04abe4 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntry.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("125E7431-F678-4E8E-B670-20A9B06C512D")] +[NativeTypeName("struct IWwwFormUrlDecoderEntry : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IWwwFormUrlDecoderEntry : IWwwFormUrlDecoderEntry.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IWwwFormUrlDecoderEntry)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Name(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_Value(HSTRING* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IWwwFormUrlDecoderEntry*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Name(HSTRING* value); + + [VtblIndex(7)] + HRESULT get_Value(HSTRING* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Name; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Value; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClass.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClass.cs new file mode 100644 index 0000000000..7b8d46e20b --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClass.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("D45A0451-F225-4542-9296-0E1DF5D254DF")] +[NativeTypeName("struct IWwwFormUrlDecoderRuntimeClass : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IWwwFormUrlDecoderRuntimeClass : IWwwFormUrlDecoderRuntimeClass.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IWwwFormUrlDecoderRuntimeClass)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT GetFirstValueByName(HSTRING name, HSTRING* phstrValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IWwwFormUrlDecoderRuntimeClass*)Unsafe.AsPointer(ref this), name, phstrValue); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT GetFirstValueByName(HSTRING name, HSTRING* phstrValue); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetFirstValueByName; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactory.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactory.cs new file mode 100644 index 0000000000..1ebd8f4b05 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactory.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("5B8C6B3D-24AE-41B5-A1BF-F0C3D544845B")] +[NativeTypeName("struct IWwwFormUrlDecoderRuntimeClassFactory : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IWwwFormUrlDecoderRuntimeClassFactory : IWwwFormUrlDecoderRuntimeClassFactory.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IWwwFormUrlDecoderRuntimeClassFactory)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT CreateWwwFormUrlDecoder(HSTRING query, [NativeTypeName("ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **")] IWwwFormUrlDecoderRuntimeClass** instance) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IWwwFormUrlDecoderRuntimeClassFactory*)Unsafe.AsPointer(ref this), query, instance); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT CreateWwwFormUrlDecoder(HSTRING query, [NativeTypeName("ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **")] IWwwFormUrlDecoderRuntimeClass** instance); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING, ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] CreateWwwFormUrlDecoder; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/Point.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Point.cs new file mode 100644 index 0000000000..96ec635e3f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Point.cs @@ -0,0 +1,16 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Point +{ + /// + public float X; + + /// + public float Y; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/PropertyType.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/PropertyType.cs new file mode 100644 index 0000000000..1f75ae6220 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/PropertyType.cs @@ -0,0 +1,133 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum PropertyType +{ + /// + PropertyType_Empty = 0, + + /// + PropertyType_UInt8 = 1, + + /// + PropertyType_Int16 = 2, + + /// + PropertyType_UInt16 = 3, + + /// + PropertyType_Int32 = 4, + + /// + PropertyType_UInt32 = 5, + + /// + PropertyType_Int64 = 6, + + /// + PropertyType_UInt64 = 7, + + /// + PropertyType_Single = 8, + + /// + PropertyType_Double = 9, + + /// + PropertyType_Char16 = 10, + + /// + PropertyType_Boolean = 11, + + /// + PropertyType_String = 12, + + /// + PropertyType_Inspectable = 13, + + /// + PropertyType_DateTime = 14, + + /// + PropertyType_TimeSpan = 15, + + /// + PropertyType_Guid = 16, + + /// + PropertyType_Point = 17, + + /// + PropertyType_Size = 18, + + /// + PropertyType_Rect = 19, + + /// + PropertyType_OtherType = 20, + + /// + PropertyType_UInt8Array = 1025, + + /// + PropertyType_Int16Array = 1026, + + /// + PropertyType_UInt16Array = 1027, + + /// + PropertyType_Int32Array = 1028, + + /// + PropertyType_UInt32Array = 1029, + + /// + PropertyType_Int64Array = 1030, + + /// + PropertyType_UInt64Array = 1031, + + /// + PropertyType_SingleArray = 1032, + + /// + PropertyType_DoubleArray = 1033, + + /// + PropertyType_Char16Array = 1034, + + /// + PropertyType_BooleanArray = 1035, + + /// + PropertyType_StringArray = 1036, + + /// + PropertyType_InspectableArray = 1037, + + /// + PropertyType_DateTimeArray = 1038, + + /// + PropertyType_TimeSpanArray = 1039, + + /// + PropertyType_GuidArray = 1040, + + /// + PropertyType_PointArray = 1041, + + /// + PropertyType_SizeArray = 1042, + + /// + PropertyType_RectArray = 1043, + + /// + PropertyType_OtherTypeArray = 1044, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/Rect.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Rect.cs new file mode 100644 index 0000000000..43e251677b --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Rect.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Rect +{ + /// + public float X; + + /// + public float Y; + + /// + public float Width; + + /// + public float Height; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/Size.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Size.cs new file mode 100644 index 0000000000..25f6a76d91 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/Size.cs @@ -0,0 +1,16 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Size +{ + /// + public float Width; + + /// + public float Height; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/TimeSpan.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/TimeSpan.cs new file mode 100644 index 0000000000..9f4b508b12 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/TimeSpan.cs @@ -0,0 +1,14 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct TimeSpan +{ + /// + [NativeTypeName("INT64")] + public long Duration; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.foundation/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.foundation/WinRT.cs new file mode 100644 index 0000000000..0adaf39594 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.foundation/WinRT.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[44]")] + public const string InterfaceName_Windows_Foundation_Collections_IPropertySet = "Windows.Foundation.Collections.IPropertySet"; + + [NativeTypeName("const WCHAR[32]")] + public const string InterfaceName_Windows_Foundation_IAsyncAction = "Windows.Foundation.IAsyncAction"; + + [NativeTypeName("const WCHAR[29]")] + public const string InterfaceName_Windows_Foundation_IClosable = "Windows.Foundation.IClosable"; + + [NativeTypeName("const WCHAR[29]")] + public const string InterfaceName_Windows_Foundation_IDeferral = "Windows.Foundation.IDeferral"; + + [NativeTypeName("const WCHAR[36]")] + public const string InterfaceName_Windows_Foundation_IDeferralFactory = "Windows.Foundation.IDeferralFactory"; + + [NativeTypeName("const WCHAR[41]")] + public const string InterfaceName_Windows_Foundation_IGetActivationFactory = "Windows.Foundation.IGetActivationFactory"; + + [NativeTypeName("const WCHAR[38]")] + public const string InterfaceName_Windows_Foundation_IGuidHelperStatics = "Windows.Foundation.IGuidHelperStatics"; + + [NativeTypeName("const WCHAR[33]")] + public const string InterfaceName_Windows_Foundation_IMemoryBuffer = "Windows.Foundation.IMemoryBuffer"; + + [NativeTypeName("const WCHAR[40]")] + public const string InterfaceName_Windows_Foundation_IMemoryBufferFactory = "Windows.Foundation.IMemoryBufferFactory"; + + [NativeTypeName("const WCHAR[42]")] + public const string InterfaceName_Windows_Foundation_IMemoryBufferReference = "Windows.Foundation.IMemoryBufferReference"; + + [NativeTypeName("const WCHAR[34]")] + public const string InterfaceName_Windows_Foundation_IPropertyValue = "Windows.Foundation.IPropertyValue"; + + [NativeTypeName("const WCHAR[41]")] + public const string InterfaceName_Windows_Foundation_IPropertyValueStatics = "Windows.Foundation.IPropertyValueStatics"; + + [NativeTypeName("const WCHAR[31]")] + public const string InterfaceName_Windows_Foundation_IStringable = "Windows.Foundation.IStringable"; + + [NativeTypeName("const WCHAR[37]")] + public const string InterfaceName_Windows_Foundation_IUriEscapeStatics = "Windows.Foundation.IUriEscapeStatics"; + + [NativeTypeName("const WCHAR[36]")] + public const string InterfaceName_Windows_Foundation_IUriRuntimeClass = "Windows.Foundation.IUriRuntimeClass"; + + [NativeTypeName("const WCHAR[43]")] + public const string InterfaceName_Windows_Foundation_IUriRuntimeClassFactory = "Windows.Foundation.IUriRuntimeClassFactory"; + + [NativeTypeName("const WCHAR[60]")] + public const string InterfaceName_Windows_Foundation_IUriRuntimeClassWithAbsoluteCanonicalUri = "Windows.Foundation.IUriRuntimeClassWithAbsoluteCanonicalUri"; + + [NativeTypeName("const WCHAR[43]")] + public const string InterfaceName_Windows_Foundation_IWwwFormUrlDecoderEntry = "Windows.Foundation.IWwwFormUrlDecoderEntry"; + + [NativeTypeName("const WCHAR[50]")] + public const string InterfaceName_Windows_Foundation_IWwwFormUrlDecoderRuntimeClass = "Windows.Foundation.IWwwFormUrlDecoderRuntimeClass"; + + [NativeTypeName("const WCHAR[57]")] + public const string InterfaceName_Windows_Foundation_IWwwFormUrlDecoderRuntimeClassFactory = "Windows.Foundation.IWwwFormUrlDecoderRuntimeClassFactory"; + + [NativeTypeName("const WCHAR[43]")] + public const string RuntimeClass_Windows_Foundation_Collections_PropertySet = "Windows.Foundation.Collections.PropertySet"; + + [NativeTypeName("const WCHAR[41]")] + public const string RuntimeClass_Windows_Foundation_Collections_StringMap = "Windows.Foundation.Collections.StringMap"; + + [NativeTypeName("const WCHAR[40]")] + public const string RuntimeClass_Windows_Foundation_Collections_ValueSet = "Windows.Foundation.Collections.ValueSet"; + + [NativeTypeName("const WCHAR[28]")] + public const string RuntimeClass_Windows_Foundation_Deferral = "Windows.Foundation.Deferral"; + + [NativeTypeName("const WCHAR[30]")] + public const string RuntimeClass_Windows_Foundation_GuidHelper = "Windows.Foundation.GuidHelper"; + + [NativeTypeName("const WCHAR[32]")] + public const string RuntimeClass_Windows_Foundation_MemoryBuffer = "Windows.Foundation.MemoryBuffer"; + + [NativeTypeName("const WCHAR[33]")] + public const string RuntimeClass_Windows_Foundation_PropertyValue = "Windows.Foundation.PropertyValue"; + + [NativeTypeName("const WCHAR[23]")] + public const string RuntimeClass_Windows_Foundation_Uri = "Windows.Foundation.Uri"; + + [NativeTypeName("const WCHAR[37]")] + public const string RuntimeClass_Windows_Foundation_WwwFormUrlDecoder = "Windows.Foundation.WwwFormUrlDecoder"; + + [NativeTypeName("const WCHAR[42]")] + public const string RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry = "Windows.Foundation.WwwFormUrlDecoderEntry"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXAlphaMode.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXAlphaMode.cs new file mode 100644 index 0000000000..bf856354da --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXAlphaMode.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.directx.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum DirectXAlphaMode +{ + /// + DirectXAlphaMode_Unspecified = 0, + + /// + DirectXAlphaMode_Premultiplied = 1, + + /// + DirectXAlphaMode_Straight = 2, + + /// + DirectXAlphaMode_Ignore = 3, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXColorSpace.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXColorSpace.cs new file mode 100644 index 0000000000..ab7633afa2 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXColorSpace.cs @@ -0,0 +1,85 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.directx.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum DirectXColorSpace +{ + /// + DirectXColorSpace_RgbFullG22NoneP709 = 0, + + /// + DirectXColorSpace_RgbFullG10NoneP709 = 1, + + /// + DirectXColorSpace_RgbStudioG22NoneP709 = 2, + + /// + DirectXColorSpace_RgbStudioG22NoneP2020 = 3, + + /// + DirectXColorSpace_Reserved = 4, + + /// + DirectXColorSpace_YccFullG22NoneP709X601 = 5, + + /// + DirectXColorSpace_YccStudioG22LeftP601 = 6, + + /// + DirectXColorSpace_YccFullG22LeftP601 = 7, + + /// + DirectXColorSpace_YccStudioG22LeftP709 = 8, + + /// + DirectXColorSpace_YccFullG22LeftP709 = 9, + + /// + DirectXColorSpace_YccStudioG22LeftP2020 = 10, + + /// + DirectXColorSpace_YccFullG22LeftP2020 = 11, + + /// + DirectXColorSpace_RgbFullG2084NoneP2020 = 12, + + /// + DirectXColorSpace_YccStudioG2084LeftP2020 = 13, + + /// + DirectXColorSpace_RgbStudioG2084NoneP2020 = 14, + + /// + DirectXColorSpace_YccStudioG22TopLeftP2020 = 15, + + /// + DirectXColorSpace_YccStudioG2084TopLeftP2020 = 16, + + /// + DirectXColorSpace_RgbFullG22NoneP2020 = 17, + + /// + DirectXColorSpace_YccStudioGHlgTopLeftP2020 = 18, + + /// + DirectXColorSpace_YccFullGHlgTopLeftP2020 = 19, + + /// + DirectXColorSpace_RgbStudioG24NoneP709 = 20, + + /// + DirectXColorSpace_RgbStudioG24NoneP2020 = 21, + + /// + DirectXColorSpace_YccStudioG24LeftP709 = 22, + + /// + DirectXColorSpace_YccStudioG24LeftP2020 = 23, + + /// + DirectXColorSpace_YccStudioG24TopLeftP2020 = 24, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPixelFormat.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPixelFormat.cs new file mode 100644 index 0000000000..79b64549c5 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPixelFormat.cs @@ -0,0 +1,373 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.directx.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum DirectXPixelFormat +{ + /// + DirectXPixelFormat_Unknown = 0, + + /// + DirectXPixelFormat_R32G32B32A32Typeless = 1, + + /// + DirectXPixelFormat_R32G32B32A32Float = 2, + + /// + DirectXPixelFormat_R32G32B32A32UInt = 3, + + /// + DirectXPixelFormat_R32G32B32A32Int = 4, + + /// + DirectXPixelFormat_R32G32B32Typeless = 5, + + /// + DirectXPixelFormat_R32G32B32Float = 6, + + /// + DirectXPixelFormat_R32G32B32UInt = 7, + + /// + DirectXPixelFormat_R32G32B32Int = 8, + + /// + DirectXPixelFormat_R16G16B16A16Typeless = 9, + + /// + DirectXPixelFormat_R16G16B16A16Float = 10, + + /// + DirectXPixelFormat_R16G16B16A16UIntNormalized = 11, + + /// + DirectXPixelFormat_R16G16B16A16UInt = 12, + + /// + DirectXPixelFormat_R16G16B16A16IntNormalized = 13, + + /// + DirectXPixelFormat_R16G16B16A16Int = 14, + + /// + DirectXPixelFormat_R32G32Typeless = 15, + + /// + DirectXPixelFormat_R32G32Float = 16, + + /// + DirectXPixelFormat_R32G32UInt = 17, + + /// + DirectXPixelFormat_R32G32Int = 18, + + /// + DirectXPixelFormat_R32G8X24Typeless = 19, + + /// + DirectXPixelFormat_D32FloatS8X24UInt = 20, + + /// + DirectXPixelFormat_R32FloatX8X24Typeless = 21, + + /// + DirectXPixelFormat_X32TypelessG8X24UInt = 22, + + /// + DirectXPixelFormat_R10G10B10A2Typeless = 23, + + /// + DirectXPixelFormat_R10G10B10A2UIntNormalized = 24, + + /// + DirectXPixelFormat_R10G10B10A2UInt = 25, + + /// + DirectXPixelFormat_R11G11B10Float = 26, + + /// + DirectXPixelFormat_R8G8B8A8Typeless = 27, + + /// + DirectXPixelFormat_R8G8B8A8UIntNormalized = 28, + + /// + DirectXPixelFormat_R8G8B8A8UIntNormalizedSrgb = 29, + + /// + DirectXPixelFormat_R8G8B8A8UInt = 30, + + /// + DirectXPixelFormat_R8G8B8A8IntNormalized = 31, + + /// + DirectXPixelFormat_R8G8B8A8Int = 32, + + /// + DirectXPixelFormat_R16G16Typeless = 33, + + /// + DirectXPixelFormat_R16G16Float = 34, + + /// + DirectXPixelFormat_R16G16UIntNormalized = 35, + + /// + DirectXPixelFormat_R16G16UInt = 36, + + /// + DirectXPixelFormat_R16G16IntNormalized = 37, + + /// + DirectXPixelFormat_R16G16Int = 38, + + /// + DirectXPixelFormat_R32Typeless = 39, + + /// + DirectXPixelFormat_D32Float = 40, + + /// + DirectXPixelFormat_R32Float = 41, + + /// + DirectXPixelFormat_R32UInt = 42, + + /// + DirectXPixelFormat_R32Int = 43, + + /// + DirectXPixelFormat_R24G8Typeless = 44, + + /// + DirectXPixelFormat_D24UIntNormalizedS8UInt = 45, + + /// + DirectXPixelFormat_R24UIntNormalizedX8Typeless = 46, + + /// + DirectXPixelFormat_X24TypelessG8UInt = 47, + + /// + DirectXPixelFormat_R8G8Typeless = 48, + + /// + DirectXPixelFormat_R8G8UIntNormalized = 49, + + /// + DirectXPixelFormat_R8G8UInt = 50, + + /// + DirectXPixelFormat_R8G8IntNormalized = 51, + + /// + DirectXPixelFormat_R8G8Int = 52, + + /// + DirectXPixelFormat_R16Typeless = 53, + + /// + DirectXPixelFormat_R16Float = 54, + + /// + DirectXPixelFormat_D16UIntNormalized = 55, + + /// + DirectXPixelFormat_R16UIntNormalized = 56, + + /// + DirectXPixelFormat_R16UInt = 57, + + /// + DirectXPixelFormat_R16IntNormalized = 58, + + /// + DirectXPixelFormat_R16Int = 59, + + /// + DirectXPixelFormat_R8Typeless = 60, + + /// + DirectXPixelFormat_R8UIntNormalized = 61, + + /// + DirectXPixelFormat_R8UInt = 62, + + /// + DirectXPixelFormat_R8IntNormalized = 63, + + /// + DirectXPixelFormat_R8Int = 64, + + /// + DirectXPixelFormat_A8UIntNormalized = 65, + + /// + DirectXPixelFormat_R1UIntNormalized = 66, + + /// + DirectXPixelFormat_R9G9B9E5SharedExponent = 67, + + /// + DirectXPixelFormat_R8G8B8G8UIntNormalized = 68, + + /// + DirectXPixelFormat_G8R8G8B8UIntNormalized = 69, + + /// + DirectXPixelFormat_BC1Typeless = 70, + + /// + DirectXPixelFormat_BC1UIntNormalized = 71, + + /// + DirectXPixelFormat_BC1UIntNormalizedSrgb = 72, + + /// + DirectXPixelFormat_BC2Typeless = 73, + + /// + DirectXPixelFormat_BC2UIntNormalized = 74, + + /// + DirectXPixelFormat_BC2UIntNormalizedSrgb = 75, + + /// + DirectXPixelFormat_BC3Typeless = 76, + + /// + DirectXPixelFormat_BC3UIntNormalized = 77, + + /// + DirectXPixelFormat_BC3UIntNormalizedSrgb = 78, + + /// + DirectXPixelFormat_BC4Typeless = 79, + + /// + DirectXPixelFormat_BC4UIntNormalized = 80, + + /// + DirectXPixelFormat_BC4IntNormalized = 81, + + /// + DirectXPixelFormat_BC5Typeless = 82, + + /// + DirectXPixelFormat_BC5UIntNormalized = 83, + + /// + DirectXPixelFormat_BC5IntNormalized = 84, + + /// + DirectXPixelFormat_B5G6R5UIntNormalized = 85, + + /// + DirectXPixelFormat_B5G5R5A1UIntNormalized = 86, + + /// + DirectXPixelFormat_B8G8R8A8UIntNormalized = 87, + + /// + DirectXPixelFormat_B8G8R8X8UIntNormalized = 88, + + /// + DirectXPixelFormat_R10G10B10XRBiasA2UIntNormalized = 89, + + /// + DirectXPixelFormat_B8G8R8A8Typeless = 90, + + /// + DirectXPixelFormat_B8G8R8A8UIntNormalizedSrgb = 91, + + /// + DirectXPixelFormat_B8G8R8X8Typeless = 92, + + /// + DirectXPixelFormat_B8G8R8X8UIntNormalizedSrgb = 93, + + /// + DirectXPixelFormat_BC6HTypeless = 94, + + /// + DirectXPixelFormat_BC6H16UnsignedFloat = 95, + + /// + DirectXPixelFormat_BC6H16Float = 96, + + /// + DirectXPixelFormat_BC7Typeless = 97, + + /// + DirectXPixelFormat_BC7UIntNormalized = 98, + + /// + DirectXPixelFormat_BC7UIntNormalizedSrgb = 99, + + /// + DirectXPixelFormat_Ayuv = 100, + + /// + DirectXPixelFormat_Y410 = 101, + + /// + DirectXPixelFormat_Y416 = 102, + + /// + DirectXPixelFormat_NV12 = 103, + + /// + DirectXPixelFormat_P010 = 104, + + /// + DirectXPixelFormat_P016 = 105, + + /// + DirectXPixelFormat_Opaque420 = 106, + + /// + DirectXPixelFormat_Yuy2 = 107, + + /// + DirectXPixelFormat_Y210 = 108, + + /// + DirectXPixelFormat_Y216 = 109, + + /// + DirectXPixelFormat_NV11 = 110, + + /// + DirectXPixelFormat_AI44 = 111, + + /// + DirectXPixelFormat_IA44 = 112, + + /// + DirectXPixelFormat_P8 = 113, + + /// + DirectXPixelFormat_A8P8 = 114, + + /// + DirectXPixelFormat_B4G4R4A4UIntNormalized = 115, + + /// + DirectXPixelFormat_P208 = 130, + + /// + DirectXPixelFormat_V208 = 131, + + /// + DirectXPixelFormat_V408 = 132, + + /// + DirectXPixelFormat_SamplerFeedbackMinMipOpaque = 189, + + /// + DirectXPixelFormat_SamplerFeedbackMipRegionUsedOpaque = 190, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPrimitiveTopology.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPrimitiveTopology.cs new file mode 100644 index 0000000000..10d1ad76fa --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.directx/DirectXPrimitiveTopology.cs @@ -0,0 +1,28 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.directx.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum DirectXPrimitiveTopology +{ + /// + DirectXPrimitiveTopology_Undefined = 0, + + /// + DirectXPrimitiveTopology_PointList = 1, + + /// + DirectXPrimitiveTopology_LineList = 2, + + /// + DirectXPrimitiveTopology_LineStrip = 3, + + /// + DirectXPrimitiveTopology_TriangleList = 4, + + /// + DirectXPrimitiveTopology_TriangleStrip = 5, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffect.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffect.cs new file mode 100644 index 0000000000..1f40e2f285 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffect.cs @@ -0,0 +1,126 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("CB51C0CE-8FE6-4636-B202-861FAA07D8F3")] +[NativeTypeName("struct IGraphicsEffect : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IGraphicsEffect : IGraphicsEffect.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IGraphicsEffect)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IGraphicsEffect*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IGraphicsEffect*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_Name(HSTRING* name) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), name); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT put_Name(HSTRING name) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IGraphicsEffect*)Unsafe.AsPointer(ref this), name); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_Name(HSTRING* name); + + [VtblIndex(7)] + HRESULT put_Name(HSTRING name); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Name; + + [NativeTypeName("HRESULT (HSTRING) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] put_Name; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSource.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSource.cs new file mode 100644 index 0000000000..c79488856c --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSource.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("2D8F9DDC-4339-4EB9-9216-F9DEB75658A2")] +[NativeTypeName("struct IGraphicsEffectSource : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IGraphicsEffectSource : IGraphicsEffectSource.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IGraphicsEffectSource)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IGraphicsEffectSource*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IID.Manual.cs new file mode 100644 index 0000000000..2233aa93f7 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/IID.Manual.cs @@ -0,0 +1,60 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IGraphicsEffect + { + get + { + ReadOnlySpan data = [ + 0xCE, 0xC0, 0x51, 0xCB, + 0xE6, 0x8F, + 0x36, 0x46, + 0xB2, + 0x02, + 0x86, + 0x1F, + 0xAA, + 0x07, + 0xD8, + 0xF3 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IGraphicsEffectSource + { + get + { + ReadOnlySpan data = [ + 0xDC, 0x9D, 0x8F, 0x2D, + 0x39, 0x43, + 0xB9, 0x4E, + 0x92, + 0x16, + 0xF9, + 0xDE, + 0xB7, + 0x56, + 0x58, + 0xA2 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/WinRT.cs new file mode 100644 index 0000000000..cc5079f170 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics.effects/WinRT.cs @@ -0,0 +1,15 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[41]")] + public const string InterfaceName_Windows_Graphics_Effects_IGraphicsEffect = "Windows.Graphics.Effects.IGraphicsEffect"; + + [NativeTypeName("const WCHAR[47]")] + public const string InterfaceName_Windows_Graphics_Effects_IGraphicsEffectSource = "Windows.Graphics.Effects.IGraphicsEffectSource"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayAdapterId.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayAdapterId.cs new file mode 100644 index 0000000000..9737e13e62 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayAdapterId.cs @@ -0,0 +1,18 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct DisplayAdapterId +{ + /// + [NativeTypeName("UINT32")] + public uint LowPart; + + /// + [NativeTypeName("INT32")] + public int HighPart; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayId.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayId.cs new file mode 100644 index 0000000000..f2cfd5b21f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/DisplayId.cs @@ -0,0 +1,14 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct DisplayId +{ + /// + [NativeTypeName("UINT64")] + public ulong Value; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2D.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2D.cs new file mode 100644 index 0000000000..869fc29adf --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2D.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("CAFF7902-670C-4181-A624-DA977203B845")] +[NativeTypeName("struct IGeometrySource2D : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IGeometrySource2D : IGeometrySource2D.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IGeometrySource2D)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IGeometrySource2D*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IGeometrySource2D*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IGeometrySource2D*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IGeometrySource2D*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IGeometrySource2D*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IGeometrySource2D*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/IID.Manual.cs new file mode 100644 index 0000000000..4831c08343 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/IID.Manual.cs @@ -0,0 +1,37 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IGeometrySource2D + { + get + { + ReadOnlySpan data = [ + 0x02, 0x79, 0xFF, 0xCA, + 0x0C, 0x67, + 0x81, 0x41, + 0xA6, + 0x24, + 0xDA, + 0x97, + 0x72, + 0x03, + 0xB8, + 0x45 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/PointInt32.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/PointInt32.cs new file mode 100644 index 0000000000..b30fbaeb63 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/PointInt32.cs @@ -0,0 +1,18 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct PointInt32 +{ + /// + [NativeTypeName("INT32")] + public int X; + + /// + [NativeTypeName("INT32")] + public int Y; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/RectInt32.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/RectInt32.cs new file mode 100644 index 0000000000..47ab38854f --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/RectInt32.cs @@ -0,0 +1,26 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct RectInt32 +{ + /// + [NativeTypeName("INT32")] + public int X; + + /// + [NativeTypeName("INT32")] + public int Y; + + /// + [NativeTypeName("INT32")] + public int Width; + + /// + [NativeTypeName("INT32")] + public int Height; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/SizeInt32.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/SizeInt32.cs new file mode 100644 index 0000000000..548ee7d848 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/SizeInt32.cs @@ -0,0 +1,18 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct SizeInt32 +{ + /// + [NativeTypeName("INT32")] + public int Width; + + /// + [NativeTypeName("INT32")] + public int Height; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.graphics/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.graphics/WinRT.cs new file mode 100644 index 0000000000..5d381a23ed --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.graphics/WinRT.cs @@ -0,0 +1,12 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[35]")] + public const string InterfaceName_Windows_Graphics_IGeometrySource2D = "Windows.Graphics.IGeometrySource2D"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/BatteryStatus.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/BatteryStatus.cs new file mode 100644 index 0000000000..1c2d7c3b24 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/BatteryStatus.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum BatteryStatus +{ + /// + BatteryStatus_NotPresent = 0, + + /// + BatteryStatus_Discharging = 1, + + /// + BatteryStatus_Idle = 2, + + /// + BatteryStatus_Charging = 3, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/EnergySaverStatus.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/EnergySaverStatus.cs new file mode 100644 index 0000000000..796701ce3d --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/EnergySaverStatus.cs @@ -0,0 +1,19 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum EnergySaverStatus +{ + /// + EnergySaverStatus_Disabled = 0, + + /// + EnergySaverStatus_Off = 1, + + /// + EnergySaverStatus_On = 2, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStatics.cs new file mode 100644 index 0000000000..c5f9b42863 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStatics.cs @@ -0,0 +1,303 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("B3161D95-1180-4376-96E1-4095568147CE")] +[NativeTypeName("struct IBackgroundEnergyManagerStatics : IInspectable")] +[NativeInheritance("IInspectable")] +[Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] +public unsafe partial struct IBackgroundEnergyManagerStatics : IBackgroundEnergyManagerStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IBackgroundEnergyManagerStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_LowUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_NearMaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_MaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_ExcessiveUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_NearTerminationUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_TerminationUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_RecentEnergyUsage([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_RecentEnergyUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT add_RecentEnergyUsageIncreased([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[14]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT remove_RecentEnergyUsageIncreased(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT add_RecentEnergyUsageReturnedToLow([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[16]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT remove_RecentEnergyUsageReturnedToLow(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IBackgroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_LowUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(7)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_NearMaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(8)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_MaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(9)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_ExcessiveUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(10)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_NearTerminationUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(11)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_TerminationUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(12)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_RecentEnergyUsage([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(13)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_RecentEnergyUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(14)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT add_RecentEnergyUsageIncreased([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(15)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT remove_RecentEnergyUsageIncreased(EventRegistrationToken token); + + [VtblIndex(16)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT add_RecentEnergyUsageReturnedToLow([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(17)] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT remove_RecentEnergyUsageReturnedToLow(EventRegistrationToken token); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_LowUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_NearMaxAcceptableUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_MaxAcceptableUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_ExcessiveUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_NearTerminationUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_TerminationUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_RecentEnergyUsage; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_RecentEnergyUsageLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RecentEnergyUsageIncreased; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] remove_RecentEnergyUsageIncreased; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RecentEnergyUsageReturnedToLow; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] remove_RecentEnergyUsageReturnedToLow; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStatics.cs new file mode 100644 index 0000000000..6a2d21eb08 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStatics.cs @@ -0,0 +1,269 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("9FF86872-E677-4814-9A20-5337CA732B98")] +[NativeTypeName("struct IForegroundEnergyManagerStatics : IInspectable")] +[NativeInheritance("IInspectable")] +[Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] +public unsafe partial struct IForegroundEnergyManagerStatics : IForegroundEnergyManagerStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IForegroundEnergyManagerStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_LowUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_NearMaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_MaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_ExcessiveUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_RecentEnergyUsage([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT get_RecentEnergyUsageLevel([NativeTypeName("UINT32 *")] uint* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT add_RecentEnergyUsageIncreased([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[12]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT remove_RecentEnergyUsageIncreased(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT add_RecentEnergyUsageReturnedToLow([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[14]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public HRESULT remove_RecentEnergyUsageReturnedToLow(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IForegroundEnergyManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_LowUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(7)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_NearMaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(8)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_MaxAcceptableUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(9)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_ExcessiveUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(10)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_RecentEnergyUsage([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(11)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT get_RecentEnergyUsageLevel([NativeTypeName("UINT32 *")] uint* value); + + [VtblIndex(12)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT add_RecentEnergyUsageIncreased([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(13)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT remove_RecentEnergyUsageIncreased(EventRegistrationToken token); + + [VtblIndex(14)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT add_RecentEnergyUsageReturnedToLow([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(15)] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + HRESULT remove_RecentEnergyUsageReturnedToLow(EventRegistrationToken token); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_LowUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_NearMaxAcceptableUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_MaxAcceptableUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_ExcessiveUsageLevel; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_RecentEnergyUsage; + + [NativeTypeName("HRESULT (UINT32 *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] get_RecentEnergyUsageLevel; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RecentEnergyUsageIncreased; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] remove_RecentEnergyUsageIncreased; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RecentEnergyUsageReturnedToLow; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public delegate* unmanaged[MemberFunction] remove_RecentEnergyUsageReturnedToLow; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IID.Manual.cs new file mode 100644 index 0000000000..4b879b5140 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IID.Manual.cs @@ -0,0 +1,83 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IBackgroundEnergyManagerStatics + { + get + { + ReadOnlySpan data = [ + 0x95, 0x1D, 0x16, 0xB3, + 0x80, 0x11, + 0x76, 0x43, + 0x96, + 0xE1, + 0x40, + 0x95, + 0x56, + 0x81, + 0x47, + 0xCE + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IForegroundEnergyManagerStatics + { + get + { + ReadOnlySpan data = [ + 0x72, 0x68, 0xF8, 0x9F, + 0x77, 0xE6, + 0x14, 0x48, + 0x9A, + 0x20, + 0x53, + 0x37, + 0xCA, + 0x73, + 0x2B, + 0x98 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IPowerManagerStatics + { + get + { + ReadOnlySpan data = [ + 0x5D, 0x82, 0x94, 0x13, + 0xCE, 0x62, + 0x64, 0x43, + 0x98, + 0xD5, + 0xAA, + 0x28, + 0xC7, + 0xFB, + 0xD1, + 0x5B + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStatics.cs new file mode 100644 index 0000000000..95dca132cb --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStatics.cs @@ -0,0 +1,308 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("1394825D-62CE-4364-98D5-AA28C7FBD15B")] +[NativeTypeName("struct IPowerManagerStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IPowerManagerStatics : IPowerManagerStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IPowerManagerStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_EnergySaverStatus([NativeTypeName("ABI::Windows::System::Power::EnergySaverStatus *")] EnergySaverStatus* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT add_EnergySaverStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[7]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT remove_EnergySaverStatusChanged(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_BatteryStatus([NativeTypeName("ABI::Windows::System::Power::BatteryStatus *")] BatteryStatus* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT add_BatteryStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[10]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT remove_BatteryStatusChanged(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT get_PowerSupplyStatus([NativeTypeName("ABI::Windows::System::Power::PowerSupplyStatus *")] PowerSupplyStatus* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT add_PowerSupplyStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[13]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT remove_PowerSupplyStatusChanged(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT get_RemainingChargePercent([NativeTypeName("INT32 *")] int* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT add_RemainingChargePercentChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[16]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + public HRESULT remove_RemainingChargePercentChanged(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(18)] + public HRESULT get_RemainingDischargeTime([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[18]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(19)] + public HRESULT add_RemainingDischargeTimeChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token) + { + return ((delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int>)(lpVtbl[19]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), handler, token); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(20)] + public HRESULT remove_RemainingDischargeTimeChanged(EventRegistrationToken token) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[20]))((IPowerManagerStatics*)Unsafe.AsPointer(ref this), token); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_EnergySaverStatus([NativeTypeName("ABI::Windows::System::Power::EnergySaverStatus *")] EnergySaverStatus* value); + + [VtblIndex(7)] + HRESULT add_EnergySaverStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(8)] + HRESULT remove_EnergySaverStatusChanged(EventRegistrationToken token); + + [VtblIndex(9)] + HRESULT get_BatteryStatus([NativeTypeName("ABI::Windows::System::Power::BatteryStatus *")] BatteryStatus* value); + + [VtblIndex(10)] + HRESULT add_BatteryStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(11)] + HRESULT remove_BatteryStatusChanged(EventRegistrationToken token); + + [VtblIndex(12)] + HRESULT get_PowerSupplyStatus([NativeTypeName("ABI::Windows::System::Power::PowerSupplyStatus *")] PowerSupplyStatus* value); + + [VtblIndex(13)] + HRESULT add_PowerSupplyStatusChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(14)] + HRESULT remove_PowerSupplyStatusChanged(EventRegistrationToken token); + + [VtblIndex(15)] + HRESULT get_RemainingChargePercent([NativeTypeName("INT32 *")] int* value); + + [VtblIndex(16)] + HRESULT add_RemainingChargePercentChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(17)] + HRESULT remove_RemainingChargePercentChanged(EventRegistrationToken token); + + [VtblIndex(18)] + HRESULT get_RemainingDischargeTime([NativeTypeName("ABI::Windows::Foundation::TimeSpan *")] TimeSpan* value); + + [VtblIndex(19)] + HRESULT add_RemainingDischargeTimeChanged([NativeTypeName("ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *")] IEventHandler* handler, EventRegistrationToken* token); + + [VtblIndex(20)] + HRESULT remove_RemainingDischargeTimeChanged(EventRegistrationToken token); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::System::Power::EnergySaverStatus *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_EnergySaverStatus; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_EnergySaverStatusChanged; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_EnergySaverStatusChanged; + + [NativeTypeName("HRESULT (ABI::Windows::System::Power::BatteryStatus *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BatteryStatus; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_BatteryStatusChanged; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_BatteryStatusChanged; + + [NativeTypeName("HRESULT (ABI::Windows::System::Power::PowerSupplyStatus *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PowerSupplyStatus; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_PowerSupplyStatusChanged; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_PowerSupplyStatusChanged; + + [NativeTypeName("HRESULT (INT32 *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RemainingChargePercent; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RemainingChargePercentChanged; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_RemainingChargePercentChanged; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::TimeSpan *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RemainingDischargeTime; + + [NativeTypeName("HRESULT (ABI::Windows::Foundation::__FIEventHandler_1_IInspectable_t *, EventRegistrationToken *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction]*, EventRegistrationToken*, int> add_RemainingDischargeTimeChanged; + + [NativeTypeName("HRESULT (EventRegistrationToken) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] remove_RemainingDischargeTimeChanged; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/PowerSupplyStatus.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/PowerSupplyStatus.cs new file mode 100644 index 0000000000..96528eb797 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/PowerSupplyStatus.cs @@ -0,0 +1,19 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public enum PowerSupplyStatus +{ + /// + PowerSupplyStatus_NotPresent = 0, + + /// + PowerSupplyStatus_Inadequate = 1, + + /// + PowerSupplyStatus_Adequate = 2, +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.system.power/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.system.power/WinRT.cs new file mode 100644 index 0000000000..b1a2ea49c8 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.system.power/WinRT.cs @@ -0,0 +1,31 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[53]")] + public const string InterfaceName_Windows_System_Power_IBackgroundEnergyManagerStatics = "Windows.System.Power.IBackgroundEnergyManagerStatics"; + + [NativeTypeName("const WCHAR[53]")] + public const string InterfaceName_Windows_System_Power_IForegroundEnergyManagerStatics = "Windows.System.Power.IForegroundEnergyManagerStatics"; + + [NativeTypeName("const WCHAR[42]")] + public const string InterfaceName_Windows_System_Power_IPowerManagerStatics = "Windows.System.Power.IPowerManagerStatics"; + + [NativeTypeName("const WCHAR[45]")] + [Obsolete("Background Energy Manager has been deprecated. For more info, see MSDN.")] + public const string RuntimeClass_Windows_System_Power_BackgroundEnergyManager = "Windows.System.Power.BackgroundEnergyManager"; + + [NativeTypeName("const WCHAR[45]")] + [Obsolete("Foreground Energy Manager has been deprecated. For more info, see MSDN.")] + public const string RuntimeClass_Windows_System_Power_ForegroundEnergyManager = "Windows.System.Power.ForegroundEnergyManager"; + + [NativeTypeName("const WCHAR[34]")] + public const string RuntimeClass_Windows_System_Power_PowerManager = "Windows.System.Power.PowerManager"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/Color.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/Color.cs new file mode 100644 index 0000000000..01bfc5adee --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/Color.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct Color +{ + /// + public byte A; + + /// + public byte R; + + /// + public byte G; + + /// + public byte B; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelper.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelper.cs new file mode 100644 index 0000000000..0f8f2852b3 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelper.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("193CFBE7-65C7-4540-AD08-6283BA76879A")] +[NativeTypeName("struct IColorHelper : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IColorHelper : IColorHelper.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IColorHelper)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IColorHelper*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IColorHelper*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IColorHelper*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IColorHelper*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IColorHelper*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IColorHelper*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics.cs new file mode 100644 index 0000000000..e3a46dfea6 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("8504DBEA-FB6A-4144-A6C2-33499C9284F5")] +[NativeTypeName("struct IColorHelperStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IColorHelperStatics : IColorHelperStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IColorHelperStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IColorHelperStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IColorHelperStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IColorHelperStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IColorHelperStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IColorHelperStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IColorHelperStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT FromArgb(byte a, byte r, byte g, byte b, [NativeTypeName("ABI::Windows::UI::Color *")] Color* returnValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IColorHelperStatics*)Unsafe.AsPointer(ref this), a, r, g, b, returnValue); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT FromArgb(byte a, byte r, byte g, byte b, [NativeTypeName("ABI::Windows::UI::Color *")] Color* returnValue); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (BYTE, BYTE, BYTE, BYTE, ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] FromArgb; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2.cs new file mode 100644 index 0000000000..5b2a87564c --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("24D9AF02-6EB0-4B94-855C-FCF0818D9A16")] +[NativeTypeName("struct IColorHelperStatics2 : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IColorHelperStatics2 : IColorHelperStatics2.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IColorHelperStatics2)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT ToDisplayName([NativeTypeName("ABI::Windows::UI::Color")] Color color, HSTRING* returnValue) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IColorHelperStatics2*)Unsafe.AsPointer(ref this), color, returnValue); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT ToDisplayName([NativeTypeName("ABI::Windows::UI::Color")] Color color, HSTRING* returnValue); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color, HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] ToDisplayName; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IColors.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColors.cs new file mode 100644 index 0000000000..6411a535b2 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColors.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("9B8C9326-4CA6-4CE5-8994-9EFF65CABDCC")] +[NativeTypeName("struct IColors : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IColors : IColors.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IColors)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IColors*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IColors*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IColors*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IColors*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IColors*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IColors*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorsStatics.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorsStatics.cs new file mode 100644 index 0000000000..73226d151a --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IColorsStatics.cs @@ -0,0 +1,2072 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("CFF52E04-CCA6-4614-A17E-754910C84A99")] +[NativeTypeName("struct IColorsStatics : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IColorsStatics : IColorsStatics.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IColorsStatics)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IColorsStatics*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IColorsStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IColorsStatics*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IColorsStatics*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IColorsStatics*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IColorsStatics*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_AliceBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(7)] + public HRESULT get_AntiqueWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[7]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(8)] + public HRESULT get_Aqua([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[8]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(9)] + public HRESULT get_Aquamarine([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[9]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(10)] + public HRESULT get_Azure([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[10]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(11)] + public HRESULT get_Beige([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[11]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(12)] + public HRESULT get_Bisque([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[12]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(13)] + public HRESULT get_Black([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[13]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(14)] + public HRESULT get_BlanchedAlmond([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[14]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(15)] + public HRESULT get_Blue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[15]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(16)] + public HRESULT get_BlueViolet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[16]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(17)] + public HRESULT get_Brown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[17]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(18)] + public HRESULT get_BurlyWood([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[18]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(19)] + public HRESULT get_CadetBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[19]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(20)] + public HRESULT get_Chartreuse([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[20]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(21)] + public HRESULT get_Chocolate([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[21]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(22)] + public HRESULT get_Coral([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[22]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(23)] + public HRESULT get_CornflowerBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[23]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(24)] + public HRESULT get_Cornsilk([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[24]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(25)] + public HRESULT get_Crimson([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[25]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(26)] + public HRESULT get_Cyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[26]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(27)] + public HRESULT get_DarkBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[27]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(28)] + public HRESULT get_DarkCyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[28]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(29)] + public HRESULT get_DarkGoldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[29]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(30)] + public HRESULT get_DarkGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[30]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(31)] + public HRESULT get_DarkGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[31]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(32)] + public HRESULT get_DarkKhaki([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[32]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(33)] + public HRESULT get_DarkMagenta([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[33]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(34)] + public HRESULT get_DarkOliveGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[34]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(35)] + public HRESULT get_DarkOrange([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[35]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(36)] + public HRESULT get_DarkOrchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[36]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(37)] + public HRESULT get_DarkRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[37]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(38)] + public HRESULT get_DarkSalmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[38]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(39)] + public HRESULT get_DarkSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[39]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(40)] + public HRESULT get_DarkSlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[40]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(41)] + public HRESULT get_DarkSlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[41]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(42)] + public HRESULT get_DarkTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[42]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(43)] + public HRESULT get_DarkViolet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[43]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(44)] + public HRESULT get_DeepPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[44]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(45)] + public HRESULT get_DeepSkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[45]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(46)] + public HRESULT get_DimGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[46]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(47)] + public HRESULT get_DodgerBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[47]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(48)] + public HRESULT get_Firebrick([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[48]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(49)] + public HRESULT get_FloralWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[49]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(50)] + public HRESULT get_ForestGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[50]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(51)] + public HRESULT get_Fuchsia([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[51]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(52)] + public HRESULT get_Gainsboro([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[52]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(53)] + public HRESULT get_GhostWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[53]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(54)] + public HRESULT get_Gold([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[54]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(55)] + public HRESULT get_Goldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[55]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(56)] + public HRESULT get_Gray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[56]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(57)] + public HRESULT get_Green([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[57]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(58)] + public HRESULT get_GreenYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[58]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(59)] + public HRESULT get_Honeydew([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[59]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(60)] + public HRESULT get_HotPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[60]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(61)] + public HRESULT get_IndianRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[61]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(62)] + public HRESULT get_Indigo([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[62]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(63)] + public HRESULT get_Ivory([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[63]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(64)] + public HRESULT get_Khaki([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[64]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(65)] + public HRESULT get_Lavender([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[65]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(66)] + public HRESULT get_LavenderBlush([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[66]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(67)] + public HRESULT get_LawnGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[67]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(68)] + public HRESULT get_LemonChiffon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[68]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(69)] + public HRESULT get_LightBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[69]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(70)] + public HRESULT get_LightCoral([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[70]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(71)] + public HRESULT get_LightCyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[71]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(72)] + public HRESULT get_LightGoldenrodYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[72]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(73)] + public HRESULT get_LightGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[73]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(74)] + public HRESULT get_LightGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[74]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(75)] + public HRESULT get_LightPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[75]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(76)] + public HRESULT get_LightSalmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[76]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(77)] + public HRESULT get_LightSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[77]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(78)] + public HRESULT get_LightSkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[78]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(79)] + public HRESULT get_LightSlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[79]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(80)] + public HRESULT get_LightSteelBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[80]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(81)] + public HRESULT get_LightYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[81]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(82)] + public HRESULT get_Lime([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[82]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(83)] + public HRESULT get_LimeGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[83]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(84)] + public HRESULT get_Linen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[84]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(85)] + public HRESULT get_Magenta([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[85]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(86)] + public HRESULT get_Maroon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[86]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(87)] + public HRESULT get_MediumAquamarine([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[87]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(88)] + public HRESULT get_MediumBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[88]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(89)] + public HRESULT get_MediumOrchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[89]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(90)] + public HRESULT get_MediumPurple([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[90]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(91)] + public HRESULT get_MediumSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[91]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(92)] + public HRESULT get_MediumSlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[92]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(93)] + public HRESULT get_MediumSpringGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[93]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(94)] + public HRESULT get_MediumTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[94]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(95)] + public HRESULT get_MediumVioletRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[95]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(96)] + public HRESULT get_MidnightBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[96]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(97)] + public HRESULT get_MintCream([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[97]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(98)] + public HRESULT get_MistyRose([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[98]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(99)] + public HRESULT get_Moccasin([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[99]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(100)] + public HRESULT get_NavajoWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[100]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(101)] + public HRESULT get_Navy([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[101]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(102)] + public HRESULT get_OldLace([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[102]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(103)] + public HRESULT get_Olive([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[103]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(104)] + public HRESULT get_OliveDrab([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[104]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(105)] + public HRESULT get_Orange([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[105]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(106)] + public HRESULT get_OrangeRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[106]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(107)] + public HRESULT get_Orchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[107]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(108)] + public HRESULT get_PaleGoldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[108]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(109)] + public HRESULT get_PaleGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[109]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(110)] + public HRESULT get_PaleTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[110]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(111)] + public HRESULT get_PaleVioletRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[111]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(112)] + public HRESULT get_PapayaWhip([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[112]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(113)] + public HRESULT get_PeachPuff([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[113]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(114)] + public HRESULT get_Peru([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[114]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(115)] + public HRESULT get_Pink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[115]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(116)] + public HRESULT get_Plum([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[116]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(117)] + public HRESULT get_PowderBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[117]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(118)] + public HRESULT get_Purple([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[118]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(119)] + public HRESULT get_Red([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[119]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(120)] + public HRESULT get_RosyBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[120]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(121)] + public HRESULT get_RoyalBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[121]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(122)] + public HRESULT get_SaddleBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[122]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(123)] + public HRESULT get_Salmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[123]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(124)] + public HRESULT get_SandyBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[124]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(125)] + public HRESULT get_SeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[125]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(126)] + public HRESULT get_SeaShell([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[126]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(127)] + public HRESULT get_Sienna([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[127]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(128)] + public HRESULT get_Silver([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[128]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(129)] + public HRESULT get_SkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[129]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(130)] + public HRESULT get_SlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[130]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(131)] + public HRESULT get_SlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[131]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(132)] + public HRESULT get_Snow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[132]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(133)] + public HRESULT get_SpringGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[133]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(134)] + public HRESULT get_SteelBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[134]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(135)] + public HRESULT get_Tan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[135]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(136)] + public HRESULT get_Teal([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[136]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(137)] + public HRESULT get_Thistle([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[137]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(138)] + public HRESULT get_Tomato([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[138]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(139)] + public HRESULT get_Transparent([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[139]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(140)] + public HRESULT get_Turquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[140]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(141)] + public HRESULT get_Violet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[141]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(142)] + public HRESULT get_Wheat([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[142]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(143)] + public HRESULT get_White([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[143]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(144)] + public HRESULT get_WhiteSmoke([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[144]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(145)] + public HRESULT get_Yellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[145]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(146)] + public HRESULT get_YellowGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[146]))((IColorsStatics*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_AliceBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(7)] + HRESULT get_AntiqueWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(8)] + HRESULT get_Aqua([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(9)] + HRESULT get_Aquamarine([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(10)] + HRESULT get_Azure([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(11)] + HRESULT get_Beige([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(12)] + HRESULT get_Bisque([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(13)] + HRESULT get_Black([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(14)] + HRESULT get_BlanchedAlmond([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(15)] + HRESULT get_Blue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(16)] + HRESULT get_BlueViolet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(17)] + HRESULT get_Brown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(18)] + HRESULT get_BurlyWood([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(19)] + HRESULT get_CadetBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(20)] + HRESULT get_Chartreuse([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(21)] + HRESULT get_Chocolate([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(22)] + HRESULT get_Coral([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(23)] + HRESULT get_CornflowerBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(24)] + HRESULT get_Cornsilk([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(25)] + HRESULT get_Crimson([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(26)] + HRESULT get_Cyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(27)] + HRESULT get_DarkBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(28)] + HRESULT get_DarkCyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(29)] + HRESULT get_DarkGoldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(30)] + HRESULT get_DarkGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(31)] + HRESULT get_DarkGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(32)] + HRESULT get_DarkKhaki([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(33)] + HRESULT get_DarkMagenta([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(34)] + HRESULT get_DarkOliveGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(35)] + HRESULT get_DarkOrange([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(36)] + HRESULT get_DarkOrchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(37)] + HRESULT get_DarkRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(38)] + HRESULT get_DarkSalmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(39)] + HRESULT get_DarkSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(40)] + HRESULT get_DarkSlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(41)] + HRESULT get_DarkSlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(42)] + HRESULT get_DarkTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(43)] + HRESULT get_DarkViolet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(44)] + HRESULT get_DeepPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(45)] + HRESULT get_DeepSkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(46)] + HRESULT get_DimGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(47)] + HRESULT get_DodgerBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(48)] + HRESULT get_Firebrick([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(49)] + HRESULT get_FloralWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(50)] + HRESULT get_ForestGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(51)] + HRESULT get_Fuchsia([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(52)] + HRESULT get_Gainsboro([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(53)] + HRESULT get_GhostWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(54)] + HRESULT get_Gold([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(55)] + HRESULT get_Goldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(56)] + HRESULT get_Gray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(57)] + HRESULT get_Green([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(58)] + HRESULT get_GreenYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(59)] + HRESULT get_Honeydew([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(60)] + HRESULT get_HotPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(61)] + HRESULT get_IndianRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(62)] + HRESULT get_Indigo([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(63)] + HRESULT get_Ivory([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(64)] + HRESULT get_Khaki([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(65)] + HRESULT get_Lavender([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(66)] + HRESULT get_LavenderBlush([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(67)] + HRESULT get_LawnGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(68)] + HRESULT get_LemonChiffon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(69)] + HRESULT get_LightBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(70)] + HRESULT get_LightCoral([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(71)] + HRESULT get_LightCyan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(72)] + HRESULT get_LightGoldenrodYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(73)] + HRESULT get_LightGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(74)] + HRESULT get_LightGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(75)] + HRESULT get_LightPink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(76)] + HRESULT get_LightSalmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(77)] + HRESULT get_LightSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(78)] + HRESULT get_LightSkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(79)] + HRESULT get_LightSlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(80)] + HRESULT get_LightSteelBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(81)] + HRESULT get_LightYellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(82)] + HRESULT get_Lime([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(83)] + HRESULT get_LimeGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(84)] + HRESULT get_Linen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(85)] + HRESULT get_Magenta([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(86)] + HRESULT get_Maroon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(87)] + HRESULT get_MediumAquamarine([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(88)] + HRESULT get_MediumBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(89)] + HRESULT get_MediumOrchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(90)] + HRESULT get_MediumPurple([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(91)] + HRESULT get_MediumSeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(92)] + HRESULT get_MediumSlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(93)] + HRESULT get_MediumSpringGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(94)] + HRESULT get_MediumTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(95)] + HRESULT get_MediumVioletRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(96)] + HRESULT get_MidnightBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(97)] + HRESULT get_MintCream([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(98)] + HRESULT get_MistyRose([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(99)] + HRESULT get_Moccasin([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(100)] + HRESULT get_NavajoWhite([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(101)] + HRESULT get_Navy([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(102)] + HRESULT get_OldLace([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(103)] + HRESULT get_Olive([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(104)] + HRESULT get_OliveDrab([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(105)] + HRESULT get_Orange([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(106)] + HRESULT get_OrangeRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(107)] + HRESULT get_Orchid([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(108)] + HRESULT get_PaleGoldenrod([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(109)] + HRESULT get_PaleGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(110)] + HRESULT get_PaleTurquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(111)] + HRESULT get_PaleVioletRed([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(112)] + HRESULT get_PapayaWhip([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(113)] + HRESULT get_PeachPuff([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(114)] + HRESULT get_Peru([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(115)] + HRESULT get_Pink([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(116)] + HRESULT get_Plum([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(117)] + HRESULT get_PowderBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(118)] + HRESULT get_Purple([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(119)] + HRESULT get_Red([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(120)] + HRESULT get_RosyBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(121)] + HRESULT get_RoyalBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(122)] + HRESULT get_SaddleBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(123)] + HRESULT get_Salmon([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(124)] + HRESULT get_SandyBrown([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(125)] + HRESULT get_SeaGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(126)] + HRESULT get_SeaShell([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(127)] + HRESULT get_Sienna([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(128)] + HRESULT get_Silver([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(129)] + HRESULT get_SkyBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(130)] + HRESULT get_SlateBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(131)] + HRESULT get_SlateGray([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(132)] + HRESULT get_Snow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(133)] + HRESULT get_SpringGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(134)] + HRESULT get_SteelBlue([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(135)] + HRESULT get_Tan([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(136)] + HRESULT get_Teal([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(137)] + HRESULT get_Thistle([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(138)] + HRESULT get_Tomato([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(139)] + HRESULT get_Transparent([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(140)] + HRESULT get_Turquoise([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(141)] + HRESULT get_Violet([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(142)] + HRESULT get_Wheat([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(143)] + HRESULT get_White([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(144)] + HRESULT get_WhiteSmoke([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(145)] + HRESULT get_Yellow([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + + [VtblIndex(146)] + HRESULT get_YellowGreen([NativeTypeName("ABI::Windows::UI::Color *")] Color* value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_AliceBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_AntiqueWhite; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Aqua; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Aquamarine; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Azure; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Beige; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Bisque; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Black; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BlanchedAlmond; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Blue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BlueViolet; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Brown; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_BurlyWood; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_CadetBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Chartreuse; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Chocolate; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Coral; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_CornflowerBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Cornsilk; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Crimson; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Cyan; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkCyan; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkGoldenrod; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkKhaki; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkMagenta; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkOliveGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkOrange; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkOrchid; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkRed; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkSalmon; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkSeaGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkSlateBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkSlateGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkTurquoise; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DarkViolet; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DeepPink; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DeepSkyBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DimGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_DodgerBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Firebrick; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_FloralWhite; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_ForestGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Fuchsia; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Gainsboro; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_GhostWhite; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Gold; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Goldenrod; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Gray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Green; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_GreenYellow; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Honeydew; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_HotPink; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_IndianRed; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Indigo; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Ivory; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Khaki; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Lavender; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LavenderBlush; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LawnGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LemonChiffon; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightCoral; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightCyan; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightGoldenrodYellow; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightPink; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightSalmon; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightSeaGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightSkyBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightSlateGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightSteelBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LightYellow; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Lime; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_LimeGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Linen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Magenta; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Maroon; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumAquamarine; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumOrchid; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumPurple; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumSeaGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumSlateBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumSpringGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumTurquoise; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MediumVioletRed; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MidnightBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MintCream; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_MistyRose; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Moccasin; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_NavajoWhite; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Navy; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_OldLace; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Olive; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_OliveDrab; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Orange; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_OrangeRed; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Orchid; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PaleGoldenrod; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PaleGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PaleTurquoise; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PaleVioletRed; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PapayaWhip; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PeachPuff; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Peru; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Pink; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Plum; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_PowderBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Purple; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Red; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RosyBrown; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_RoyalBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SaddleBrown; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Salmon; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SandyBrown; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SeaGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SeaShell; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Sienna; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Silver; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SkyBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SlateBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SlateGray; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Snow; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SpringGreen; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_SteelBlue; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Tan; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Teal; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Thistle; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Tomato; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Transparent; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Turquoise; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Violet; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Wheat; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_White; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_WhiteSmoke; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_Yellow; + + [NativeTypeName("HRESULT (ABI::Windows::UI::Color *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_YellowGreen; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IID.Manual.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IID.Manual.cs new file mode 100644 index 0000000000..4775657576 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IID.Manual.cs @@ -0,0 +1,175 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace TerraFX.Interop.Windows; + +public static unsafe partial class IID +{ + public static ref readonly Guid IID_IColorHelper + { + get + { + ReadOnlySpan data = [ + 0xE7, 0xFB, 0x3C, 0x19, + 0xC7, 0x65, + 0x40, 0x45, + 0xAD, + 0x08, + 0x62, + 0x83, + 0xBA, + 0x76, + 0x87, + 0x9A + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IColorHelperStatics + { + get + { + ReadOnlySpan data = [ + 0xEA, 0xDB, 0x04, 0x85, + 0x6A, 0xFB, + 0x44, 0x41, + 0xA6, + 0xC2, + 0x33, + 0x49, + 0x9C, + 0x92, + 0x84, + 0xF5 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IColorHelperStatics2 + { + get + { + ReadOnlySpan data = [ + 0x02, 0xAF, 0xD9, 0x24, + 0xB0, 0x6E, + 0x94, 0x4B, + 0x85, + 0x5C, + 0xFC, + 0xF0, + 0x81, + 0x8D, + 0x9A, + 0x16 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IColors + { + get + { + ReadOnlySpan data = [ + 0x26, 0x93, 0x8C, 0x9B, + 0xA6, 0x4C, + 0xE5, 0x4C, + 0x89, + 0x94, + 0x9E, + 0xFF, + 0x65, + 0xCA, + 0xBD, + 0xCC + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IColorsStatics + { + get + { + ReadOnlySpan data = [ + 0x04, 0x2E, 0xF5, 0xCF, + 0xA6, 0xCC, + 0x14, 0x46, + 0xA1, + 0x7E, + 0x75, + 0x49, + 0x10, + 0xC8, + 0x4A, + 0x99 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUIContentRoot + { + get + { + ReadOnlySpan data = [ + 0xC6, 0xBA, 0xFC, 0x1D, + 0x6B, 0xB3, + 0xB9, 0x5C, + 0x9B, + 0xC5, + 0x2B, + 0x7A, + 0x0E, + 0xDD, + 0xC3, + 0x78 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } + + public static ref readonly Guid IID_IUIContext + { + get + { + ReadOnlySpan data = [ + 0xCD, 0xFA, 0x5C, 0xBB, + 0xD8, 0x5B, + 0xD0, 0x59, + 0xA5, + 0x9E, + 0x1C, + 0x17, + 0xA4, + 0xD6, + 0xD2, + 0x43 + ]; + + Debug.Assert(data.Length == Unsafe.SizeOf()); + return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); + } + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRoot.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRoot.cs new file mode 100644 index 0000000000..8f065a46f8 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRoot.cs @@ -0,0 +1,112 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("1DFCBAC6-B36B-5CB9-9BC5-2B7A0EDDC378")] +[NativeTypeName("struct IUIContentRoot : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUIContentRoot : IUIContentRoot.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUIContentRoot)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUIContentRoot*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUIContentRoot*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUIContentRoot*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUIContentRoot*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUIContentRoot*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUIContentRoot*)Unsafe.AsPointer(ref this), trustLevel); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(6)] + public HRESULT get_UIContext([NativeTypeName("ABI::Windows::UI::IUIContext **")] IUIContext** value) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[6]))((IUIContentRoot*)Unsafe.AsPointer(ref this), value); + } + + public interface Interface : IInspectable.Interface + { + [VtblIndex(6)] + HRESULT get_UIContext([NativeTypeName("ABI::Windows::UI::IUIContext **")] IUIContext** value); + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + + [NativeTypeName("HRESULT (ABI::Windows::UI::IUIContext **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] get_UIContext; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContext.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContext.cs new file mode 100644 index 0000000000..ddbd2c1276 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/IUIContext.cs @@ -0,0 +1,99 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using TerraFX.Interop.Windows; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT; + +/// +[Guid("BB5CFACD-5BD8-59D0-A59E-1C17A4D6D243")] +[NativeTypeName("struct IUIContext : IInspectable")] +[NativeInheritance("IInspectable")] +public unsafe partial struct IUIContext : IUIContext.Interface, INativeGuid +{ + static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUIContext)); + + public void** lpVtbl; + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(0)] + public HRESULT QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[0]))((IUIContext*)Unsafe.AsPointer(ref this), riid, ppvObject); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(1)] + [return: NativeTypeName("ULONG")] + public uint AddRef() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[1]))((IUIContext*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(2)] + [return: NativeTypeName("ULONG")] + public uint Release() + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[2]))((IUIContext*)Unsafe.AsPointer(ref this)); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(3)] + public HRESULT GetIids([NativeTypeName("ULONG *")] uint* iidCount, [NativeTypeName("IID **")] Guid** iids) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[3]))((IUIContext*)Unsafe.AsPointer(ref this), iidCount, iids); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(4)] + public HRESULT GetRuntimeClassName(HSTRING* className) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[4]))((IUIContext*)Unsafe.AsPointer(ref this), className); + } + + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + [VtblIndex(5)] + public HRESULT GetTrustLevel(TrustLevel* trustLevel) + { + return ((delegate* unmanaged[MemberFunction])(lpVtbl[5]))((IUIContext*)Unsafe.AsPointer(ref this), trustLevel); + } + + public interface Interface : IInspectable.Interface + { + } + + public partial struct Vtbl + where TSelf : unmanaged, Interface + { + [NativeTypeName("HRESULT (const IID &, void **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] QueryInterface; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] AddRef; + + [NativeTypeName("ULONG () __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] Release; + + [NativeTypeName("HRESULT (ULONG *, IID **) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetIids; + + [NativeTypeName("HRESULT (HSTRING *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetRuntimeClassName; + + [NativeTypeName("HRESULT (TrustLevel *) __attribute__((stdcall))")] + public delegate* unmanaged[MemberFunction] GetTrustLevel; + } +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/WinRT.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/WinRT.cs new file mode 100644 index 0000000000..ff9a289f56 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/WinRT.cs @@ -0,0 +1,42 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +public static partial class WinRT +{ + [NativeTypeName("const WCHAR[24]")] + public const string InterfaceName_Windows_UI_IColorHelper = "Windows.UI.IColorHelper"; + + [NativeTypeName("const WCHAR[31]")] + public const string InterfaceName_Windows_UI_IColorHelperStatics = "Windows.UI.IColorHelperStatics"; + + [NativeTypeName("const WCHAR[32]")] + public const string InterfaceName_Windows_UI_IColorHelperStatics2 = "Windows.UI.IColorHelperStatics2"; + + [NativeTypeName("const WCHAR[19]")] + public const string InterfaceName_Windows_UI_IColors = "Windows.UI.IColors"; + + [NativeTypeName("const WCHAR[26]")] + public const string InterfaceName_Windows_UI_IColorsStatics = "Windows.UI.IColorsStatics"; + + [NativeTypeName("const WCHAR[26]")] + public const string InterfaceName_Windows_UI_IUIContentRoot = "Windows.UI.IUIContentRoot"; + + [NativeTypeName("const WCHAR[22]")] + public const string InterfaceName_Windows_UI_IUIContext = "Windows.UI.IUIContext"; + + [NativeTypeName("const WCHAR[23]")] + public const string RuntimeClass_Windows_UI_ColorHelper = "Windows.UI.ColorHelper"; + + [NativeTypeName("const WCHAR[18]")] + public const string RuntimeClass_Windows_UI_Colors = "Windows.UI.Colors"; + + [NativeTypeName("const WCHAR[25]")] + public const string RuntimeClass_Windows_UI_UIContentRoot = "Windows.UI.UIContentRoot"; + + [NativeTypeName("const WCHAR[21]")] + public const string RuntimeClass_Windows_UI_UIContext = "Windows.UI.UIContext"; +} diff --git a/sources/Interop/Windows/WinRT/winrt/windows.ui/WindowId.cs b/sources/Interop/Windows/WinRT/winrt/windows.ui/WindowId.cs new file mode 100644 index 0000000000..7be14cc346 --- /dev/null +++ b/sources/Interop/Windows/WinRT/winrt/windows.ui/WindowId.cs @@ -0,0 +1,14 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +namespace TerraFX.Interop.WinRT; + +/// +public partial struct WindowId +{ + /// + [NativeTypeName("UINT64")] + public ulong Value; +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2Tests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2Tests.cs new file mode 100644 index 0000000000..ed4afa0b3e --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStatics2Tests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IKnownSimpleHapticsControllerWaveformsStatics2Tests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IKnownSimpleHapticsControllerWaveformsStatics2).GUID, Is.EqualTo(IID_IKnownSimpleHapticsControllerWaveformsStatics2)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStaticsTests.cs new file mode 100644 index 0000000000..938ffe14c1 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IKnownSimpleHapticsControllerWaveformsStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IKnownSimpleHapticsControllerWaveformsStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IKnownSimpleHapticsControllerWaveformsStatics).GUID, Is.EqualTo(IID_IKnownSimpleHapticsControllerWaveformsStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedbackTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedbackTests.cs new file mode 100644 index 0000000000..1b89b97e74 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerFeedbackTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class ISimpleHapticsControllerFeedbackTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(ISimpleHapticsControllerFeedback).GUID, Is.EqualTo(IID_ISimpleHapticsControllerFeedback)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerTests.cs new file mode 100644 index 0000000000..28c22025e4 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/ISimpleHapticsControllerTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class ISimpleHapticsControllerTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(ISimpleHapticsController).GUID, Is.EqualTo(IID_ISimpleHapticsController)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStaticsTests.cs new file mode 100644 index 0000000000..c2042258e2 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IVibrationDeviceStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IVibrationDeviceStatics).GUID, Is.EqualTo(IID_IVibrationDeviceStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceTests.cs new file mode 100644 index 0000000000..3e36001456 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.haptics/IVibrationDeviceTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.haptics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IVibrationDeviceTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IVibrationDevice).GUID, Is.EqualTo(IID_IVibrationDevice)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReportTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReportTests.cs new file mode 100644 index 0000000000..ba336f703d --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryReportTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IBatteryReportTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IBatteryReport).GUID, Is.EqualTo(IID_IBatteryReport)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStaticsTests.cs new file mode 100644 index 0000000000..6f62ed2b93 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IBatteryStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IBatteryStatics).GUID, Is.EqualTo(IID_IBatteryStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryTests.cs new file mode 100644 index 0000000000..65bf3ee827 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.devices.power/IBatteryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.devices.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IBatteryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IBattery).GUID, Is.EqualTo(IID_IBattery)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStaticsTests.cs new file mode 100644 index 0000000000..e9807c79f0 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation.metadata/IApiInformationStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.metadata.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IApiInformationStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IApiInformationStatics).GUID, Is.EqualTo(IID_IApiInformationStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandlerTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandlerTests.cs new file mode 100644 index 0000000000..9c41324b61 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionCompletedHandlerTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IAsyncActionCompletedHandlerTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IAsyncActionCompletedHandler).GUID, Is.EqualTo(IID_IAsyncActionCompletedHandler)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionTests.cs new file mode 100644 index 0000000000..563b03fd70 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IAsyncActionTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IAsyncActionTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IAsyncAction).GUID, Is.EqualTo(IID_IAsyncAction)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IClosableTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IClosableTests.cs new file mode 100644 index 0000000000..0f1200d7df --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IClosableTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IClosableTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IClosable).GUID, Is.EqualTo(IID_IClosable)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandlerTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandlerTests.cs new file mode 100644 index 0000000000..079e477025 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralCompletedHandlerTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IDeferralCompletedHandlerTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IDeferralCompletedHandler).GUID, Is.EqualTo(IID_IDeferralCompletedHandler)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactoryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactoryTests.cs new file mode 100644 index 0000000000..56297ba99d --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralFactoryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IDeferralFactoryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IDeferralFactory).GUID, Is.EqualTo(IID_IDeferralFactory)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralTests.cs new file mode 100644 index 0000000000..4586492d61 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IDeferralTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IDeferralTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IDeferral).GUID, Is.EqualTo(IID_IDeferral)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactoryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactoryTests.cs new file mode 100644 index 0000000000..24e1094cf2 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGetActivationFactoryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IGetActivationFactoryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IGetActivationFactory).GUID, Is.EqualTo(IID_IGetActivationFactory)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStaticsTests.cs new file mode 100644 index 0000000000..cdeca5a81e --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IGuidHelperStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IGuidHelperStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IGuidHelperStatics).GUID, Is.EqualTo(IID_IGuidHelperStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactoryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactoryTests.cs new file mode 100644 index 0000000000..c83a3016ab --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferFactoryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IMemoryBufferFactoryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IMemoryBufferFactory).GUID, Is.EqualTo(IID_IMemoryBufferFactory)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReferenceTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReferenceTests.cs new file mode 100644 index 0000000000..8af0f36af2 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferReferenceTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IMemoryBufferReferenceTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IMemoryBufferReference).GUID, Is.EqualTo(IID_IMemoryBufferReference)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferTests.cs new file mode 100644 index 0000000000..aab218fa5a --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IMemoryBufferTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IMemoryBufferTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IMemoryBuffer).GUID, Is.EqualTo(IID_IMemoryBuffer)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySetTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySetTests.cs new file mode 100644 index 0000000000..1fc5b2f5a7 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertySetTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IPropertySetTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IPropertySet).GUID, Is.EqualTo(IID_IPropertySet)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStaticsTests.cs new file mode 100644 index 0000000000..1129c8d901 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IPropertyValueStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IPropertyValueStatics).GUID, Is.EqualTo(IID_IPropertyValueStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueTests.cs new file mode 100644 index 0000000000..0cde458f14 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IPropertyValueTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IPropertyValueTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IPropertyValue).GUID, Is.EqualTo(IID_IPropertyValue)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IStringableTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IStringableTests.cs new file mode 100644 index 0000000000..f30d037f61 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IStringableTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IStringableTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IStringable).GUID, Is.EqualTo(IID_IStringable)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStaticsTests.cs new file mode 100644 index 0000000000..611020764a --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriEscapeStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUriEscapeStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUriEscapeStatics).GUID, Is.EqualTo(IID_IUriEscapeStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactoryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactoryTests.cs new file mode 100644 index 0000000000..f42c6e02e8 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassFactoryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUriRuntimeClassFactoryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUriRuntimeClassFactory).GUID, Is.EqualTo(IID_IUriRuntimeClassFactory)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassTests.cs new file mode 100644 index 0000000000..22ebd47e56 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUriRuntimeClassTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUriRuntimeClass).GUID, Is.EqualTo(IID_IUriRuntimeClass)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUriTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUriTests.cs new file mode 100644 index 0000000000..ed670d2b2d --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IUriRuntimeClassWithAbsoluteCanonicalUriTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUriRuntimeClassWithAbsoluteCanonicalUriTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUriRuntimeClassWithAbsoluteCanonicalUri).GUID, Is.EqualTo(IID_IUriRuntimeClassWithAbsoluteCanonicalUri)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntryTests.cs new file mode 100644 index 0000000000..8878858f16 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderEntryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IWwwFormUrlDecoderEntryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IWwwFormUrlDecoderEntry).GUID, Is.EqualTo(IID_IWwwFormUrlDecoderEntry)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactoryTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactoryTests.cs new file mode 100644 index 0000000000..067a20ad97 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassFactoryTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IWwwFormUrlDecoderRuntimeClassFactoryTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IWwwFormUrlDecoderRuntimeClassFactory).GUID, Is.EqualTo(IID_IWwwFormUrlDecoderRuntimeClassFactory)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassTests.cs new file mode 100644 index 0000000000..66059c5803 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.foundation/IWwwFormUrlDecoderRuntimeClassTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.foundation.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IWwwFormUrlDecoderRuntimeClassTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IWwwFormUrlDecoderRuntimeClass).GUID, Is.EqualTo(IID_IWwwFormUrlDecoderRuntimeClass)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSourceTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSourceTests.cs new file mode 100644 index 0000000000..bf4bd6eb63 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectSourceTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IGraphicsEffectSourceTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IGraphicsEffectSource).GUID, Is.EqualTo(IID_IGraphicsEffectSource)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectTests.cs new file mode 100644 index 0000000000..54c1f419cc --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.graphics.effects/IGraphicsEffectTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.effects.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IGraphicsEffectTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IGraphicsEffect).GUID, Is.EqualTo(IID_IGraphicsEffect)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2DTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2DTests.cs new file mode 100644 index 0000000000..1fa0b2baa6 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.graphics/IGeometrySource2DTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.graphics.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IGeometrySource2DTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IGeometrySource2D).GUID, Is.EqualTo(IID_IGeometrySource2D)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStaticsTests.cs new file mode 100644 index 0000000000..d70da71ac4 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IBackgroundEnergyManagerStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IBackgroundEnergyManagerStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IBackgroundEnergyManagerStatics).GUID, Is.EqualTo(IID_IBackgroundEnergyManagerStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStaticsTests.cs new file mode 100644 index 0000000000..ea74558186 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IForegroundEnergyManagerStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IForegroundEnergyManagerStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IForegroundEnergyManagerStatics).GUID, Is.EqualTo(IID_IForegroundEnergyManagerStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStaticsTests.cs new file mode 100644 index 0000000000..e34fa2ae66 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.system.power/IPowerManagerStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.system.power.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IPowerManagerStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IPowerManagerStatics).GUID, Is.EqualTo(IID_IPowerManagerStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2Tests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2Tests.cs new file mode 100644 index 0000000000..a405de56d7 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStatics2Tests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IColorHelperStatics2Tests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IColorHelperStatics2).GUID, Is.EqualTo(IID_IColorHelperStatics2)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStaticsTests.cs new file mode 100644 index 0000000000..19cbbef63d --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IColorHelperStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IColorHelperStatics).GUID, Is.EqualTo(IID_IColorHelperStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperTests.cs new file mode 100644 index 0000000000..4a6f03ba48 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorHelperTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IColorHelperTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IColorHelper).GUID, Is.EqualTo(IID_IColorHelper)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsStaticsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsStaticsTests.cs new file mode 100644 index 0000000000..f4f652a15f --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsStaticsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IColorsStaticsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IColorsStatics).GUID, Is.EqualTo(IID_IColorsStatics)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsTests.cs new file mode 100644 index 0000000000..36e88c5717 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IColorsTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IColorsTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IColors).GUID, Is.EqualTo(IID_IColors)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRootTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRootTests.cs new file mode 100644 index 0000000000..88cc08ad45 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContentRootTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUIContentRootTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUIContentRoot).GUID, Is.EqualTo(IID_IUIContentRoot)); + } +} diff --git a/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContextTests.cs b/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContextTests.cs new file mode 100644 index 0000000000..2999f8f872 --- /dev/null +++ b/tests/Interop/Windows/WinRT/winrt/windows.ui/IUIContextTests.cs @@ -0,0 +1,22 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +// Ported from winrt/windows.ui.h in the Windows SDK for Windows 10.0.22621.0 +// Original source is Copyright © Microsoft. All rights reserved. + +using NUnit.Framework; +using System; +using System.Runtime.InteropServices; +using static TerraFX.Interop.Windows.IID; + +namespace TerraFX.Interop.WinRT.UnitTests; + +/// Provides validation of the struct. +public static unsafe partial class IUIContextTests +{ + /// Validates that the of the struct is correct. + [Test] + public static void GuidOfTest() + { + Assert.That(typeof(IUIContext).GUID, Is.EqualTo(IID_IUIContext)); + } +}