// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.240405.15 #pragma once #ifndef WINRT_Windows_Devices_Adc_0_H #define WINRT_Windows_Devices_Adc_0_H WINRT_EXPORT namespace winrt::Windows::Devices::Adc::Provider { struct IAdcProvider; } WINRT_EXPORT namespace winrt::Windows::Devices::Adc { enum class AdcChannelMode : int32_t { SingleEnded = 0, Differential = 1, }; struct IAdcChannel; struct IAdcController; struct IAdcControllerStatics; struct IAdcControllerStatics2; struct AdcChannel; struct AdcController; } namespace winrt::impl { template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = enum_category; }; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.AdcChannel"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.AdcController"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.AdcChannelMode"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.IAdcChannel"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.IAdcController"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.IAdcControllerStatics"; template <> inline constexpr auto& name_v = L"Windows.Devices.Adc.IAdcControllerStatics2"; template <> inline constexpr guid guid_v{ 0x040BF414,0x2588,0x4A56,{ 0xAB,0xEF,0x73,0xA2,0x60,0xAC,0xC6,0x0A } }; // 040BF414-2588-4A56-ABEF-73A260ACC60A template <> inline constexpr guid guid_v{ 0x2A76E4B0,0xA896,0x4219,{ 0x86,0xB6,0xEA,0x8C,0xDC,0xE9,0x8F,0x56 } }; // 2A76E4B0-A896-4219-86B6-EA8CDCE98F56 template <> inline constexpr guid guid_v{ 0xCCE98E0C,0x01F8,0x4891,{ 0xBC,0x3B,0xBE,0x53,0xEF,0x27,0x9C,0xA4 } }; // CCE98E0C-01F8-4891-BC3B-BE53EF279CA4 template <> inline constexpr guid guid_v{ 0xA2B93B1D,0x977B,0x4F5A,{ 0xA5,0xFE,0xA6,0xAB,0xAF,0xFE,0x64,0x84 } }; // A2B93B1D-977B-4F5A-A5FE-A6ABAFFE6484 template <> struct default_interface{ using type = winrt::Windows::Devices::Adc::IAdcChannel; }; template <> struct default_interface{ using type = winrt::Windows::Devices::Adc::IAdcController; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Controller(void**) noexcept = 0; virtual int32_t __stdcall ReadValue(int32_t*) noexcept = 0; virtual int32_t __stdcall ReadRatio(double*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ChannelCount(int32_t*) noexcept = 0; virtual int32_t __stdcall get_ResolutionInBits(int32_t*) noexcept = 0; virtual int32_t __stdcall get_MinValue(int32_t*) noexcept = 0; virtual int32_t __stdcall get_MaxValue(int32_t*) noexcept = 0; virtual int32_t __stdcall get_ChannelMode(int32_t*) noexcept = 0; virtual int32_t __stdcall put_ChannelMode(int32_t) noexcept = 0; virtual int32_t __stdcall IsChannelModeSupported(int32_t, bool*) noexcept = 0; virtual int32_t __stdcall OpenChannel(int32_t, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetControllersAsync(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetDefaultAsync(void**) noexcept = 0; }; }; template struct consume_Windows_Devices_Adc_IAdcChannel { [[nodiscard]] auto Controller() const; auto ReadValue() const; auto ReadRatio() const; }; template <> struct consume { template using type = consume_Windows_Devices_Adc_IAdcChannel; }; template struct consume_Windows_Devices_Adc_IAdcController { [[nodiscard]] auto ChannelCount() const; [[nodiscard]] auto ResolutionInBits() const; [[nodiscard]] auto MinValue() const; [[nodiscard]] auto MaxValue() const; [[nodiscard]] auto ChannelMode() const; auto ChannelMode(winrt::Windows::Devices::Adc::AdcChannelMode const& value) const; auto IsChannelModeSupported(winrt::Windows::Devices::Adc::AdcChannelMode const& channelMode) const; auto OpenChannel(int32_t channelNumber) const; }; template <> struct consume { template using type = consume_Windows_Devices_Adc_IAdcController; }; template struct consume_Windows_Devices_Adc_IAdcControllerStatics { auto GetControllersAsync(winrt::Windows::Devices::Adc::Provider::IAdcProvider const& provider) const; }; template <> struct consume { template using type = consume_Windows_Devices_Adc_IAdcControllerStatics; }; template struct consume_Windows_Devices_Adc_IAdcControllerStatics2 { auto GetDefaultAsync() const; }; template <> struct consume { template using type = consume_Windows_Devices_Adc_IAdcControllerStatics2; }; } #endif