// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; import "Windows.Devices.idl"; import "Windows.Devices.Adc.Provider.idl"; // Forward Declare namespace Windows { namespace Devices { namespace Adc { namespace Provider { interface IAdcProvider; } } } } namespace Windows { namespace Devices { apicontract DevicesLowLevelContract; } } namespace Windows { namespace Foundation { interface IClosable; } } namespace Windows { namespace Devices { namespace Adc { typedef enum AdcChannelMode AdcChannelMode; interface IAdcChannel; interface IAdcController; interface IAdcControllerStatics; interface IAdcControllerStatics2; runtimeclass AdcChannel; runtimeclass AdcController; } } } // Generic instantiations namespace Windows { namespace Devices { namespace Adc { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation*>; } } } } // Type definition namespace Windows { namespace Devices { namespace Adc { [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] enum AdcChannelMode { SingleEnded = 0, Differential = 1 }; [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] [exclusiveto(Windows.Devices.Adc.AdcChannel)] [uuid(040BF414-2588-4A56-ABEF-73A260ACC60A)] interface IAdcChannel : IInspectable requires Windows.Foundation.IClosable { [propget] HRESULT Controller([out] [retval] Windows.Devices.Adc.AdcController** value); HRESULT ReadValue([out] [retval] INT32* result); HRESULT ReadRatio([out] [retval] DOUBLE* result); } [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] [exclusiveto(Windows.Devices.Adc.AdcController)] [uuid(2A76E4B0-A896-4219-86B6-EA8CDCE98F56)] interface IAdcController : IInspectable { [propget] HRESULT ChannelCount([out] [retval] INT32* value); [propget] HRESULT ResolutionInBits([out] [retval] INT32* value); [propget] HRESULT MinValue([out] [retval] INT32* value); [propget] HRESULT MaxValue([out] [retval] INT32* value); [propget] HRESULT ChannelMode([out] [retval] Windows.Devices.Adc.AdcChannelMode* value); [propput] HRESULT ChannelMode([in] Windows.Devices.Adc.AdcChannelMode value); HRESULT IsChannelModeSupported([in] Windows.Devices.Adc.AdcChannelMode channelMode, [out] [retval] boolean* result); HRESULT OpenChannel([in] INT32 channelNumber, [out] [retval] Windows.Devices.Adc.AdcChannel** result); } [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] [exclusiveto(Windows.Devices.Adc.AdcController)] [uuid(CCE98E0C-01F8-4891-BC3B-BE53EF279CA4)] interface IAdcControllerStatics : IInspectable { HRESULT GetControllersAsync([in] Windows.Devices.Adc.Provider.IAdcProvider* provider, [out] [retval] Windows.Foundation.IAsyncOperation*>** operation); } [contract(Windows.Devices.DevicesLowLevelContract, 2.0)] [exclusiveto(Windows.Devices.Adc.AdcController)] [uuid(A2B93B1D-977B-4F5A-A5FE-A6ABAFFE6484)] interface IAdcControllerStatics2 : IInspectable { HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] [marshaling_behavior(agile)] runtimeclass AdcChannel { [default] interface Windows.Devices.Adc.IAdcChannel; interface Windows.Foundation.IClosable; } [contract(Windows.Devices.DevicesLowLevelContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Adc.IAdcControllerStatics, Windows.Devices.DevicesLowLevelContract, 1.0)] [static(Windows.Devices.Adc.IAdcControllerStatics2, Windows.Devices.DevicesLowLevelContract, 2.0)] runtimeclass AdcController { [default] interface Windows.Devices.Adc.IAdcController; } } } }