| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt/ |
Upload File : |
//
// 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.Spi.Provider.idl";
// Forward Declare
namespace Windows
{
namespace Devices
{
apicontract DevicesLowLevelContract;
}
}
namespace Windows
{
namespace Devices
{
namespace Spi
{
namespace Provider
{
interface ISpiProvider;
}
}
}
}
namespace Windows
{
namespace Foundation
{
interface IClosable;
}
}
namespace Windows
{
namespace Devices
{
namespace Spi
{
typedef enum SpiMode SpiMode;
typedef enum SpiSharingMode SpiSharingMode;
interface ISpiBusInfo;
interface ISpiConnectionSettings;
interface ISpiConnectionSettingsFactory;
interface ISpiController;
interface ISpiControllerStatics;
interface ISpiDevice;
interface ISpiDeviceStatics;
runtimeclass SpiBusInfo;
runtimeclass SpiConnectionSettings;
runtimeclass SpiController;
runtimeclass SpiDevice;
}
}
}
// Generic instantiations
namespace Windows
{
namespace Devices
{
namespace Spi
{
declare
{
interface Windows.Foundation.Collections.IIterable<Windows.Devices.Spi.SpiController*>;
interface Windows.Foundation.Collections.IIterator<Windows.Devices.Spi.SpiController*>;
interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Spi.SpiController*>;
interface Windows.Foundation.IAsyncOperation<Windows.Devices.Spi.SpiController*>;
interface Windows.Foundation.IAsyncOperation<Windows.Devices.Spi.SpiDevice*>;
interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Spi.SpiController*>*>;
}
}
}
}
// Type definition
namespace Windows
{
namespace Devices
{
namespace Spi
{
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
enum SpiMode
{
Mode0 = 0,
Mode1 = 1,
Mode2 = 2,
Mode3 = 3
};
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
enum SpiSharingMode
{
Exclusive = 0,
Shared = 1
};
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[exclusiveto(Windows.Devices.Spi.SpiBusInfo)]
[uuid(9929444A-54F2-48C6-B952-9C32FC02C669)]
interface ISpiBusInfo : IInspectable
{
[propget] HRESULT ChipSelectLineCount([out] [retval] INT32* value);
[propget] HRESULT MinClockFrequency([out] [retval] INT32* value);
[propget] HRESULT MaxClockFrequency([out] [retval] INT32* value);
[propget] HRESULT SupportedDataBitLengths([out] [retval] Windows.Foundation.Collections.IVectorView<INT32>** value);
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[exclusiveto(Windows.Devices.Spi.SpiConnectionSettings)]
[uuid(5283A37F-F935-4B9F-A7A7-3A7890AFA5CE)]
interface ISpiConnectionSettings : IInspectable
{
[propget] HRESULT ChipSelectLine([out] [retval] INT32* value);
[propput] HRESULT ChipSelectLine([in] INT32 value);
[propget] HRESULT Mode([out] [retval] Windows.Devices.Spi.SpiMode* value);
[propput] HRESULT Mode([in] Windows.Devices.Spi.SpiMode value);
[propget] HRESULT DataBitLength([out] [retval] INT32* value);
[propput] HRESULT DataBitLength([in] INT32 value);
[propget] HRESULT ClockFrequency([out] [retval] INT32* value);
[propput] HRESULT ClockFrequency([in] INT32 value);
[propget] HRESULT SharingMode([out] [retval] Windows.Devices.Spi.SpiSharingMode* value);
[propput] HRESULT SharingMode([in] Windows.Devices.Spi.SpiSharingMode value);
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[exclusiveto(Windows.Devices.Spi.SpiConnectionSettings)]
[uuid(FF99081E-10C4-44B7-9FEA-A748B5A46F31)]
interface ISpiConnectionSettingsFactory : IInspectable
{
HRESULT Create([in] INT32 chipSelectLine, [out] [retval] Windows.Devices.Spi.SpiConnectionSettings** value);
}
[contract(Windows.Devices.DevicesLowLevelContract, 2.0)]
[exclusiveto(Windows.Devices.Spi.SpiController)]
[uuid(A8D3C829-9895-4159-A934-8741F1EE6D27)]
interface ISpiController : IInspectable
{
HRESULT GetDevice([in] Windows.Devices.Spi.SpiConnectionSettings* settings, [out] [retval] Windows.Devices.Spi.SpiDevice** device);
}
[contract(Windows.Devices.DevicesLowLevelContract, 2.0)]
[exclusiveto(Windows.Devices.Spi.SpiController)]
[uuid(0D5229E2-138B-4E48-B964-4F2F79B9C5A2)]
interface ISpiControllerStatics : IInspectable
{
HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Spi.SpiController*>** operation);
HRESULT GetControllersAsync([in] Windows.Devices.Spi.Provider.ISpiProvider* provider, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Spi.SpiController*>*>** operation);
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[exclusiveto(Windows.Devices.Spi.SpiDevice)]
[uuid(05D5356D-11B6-4D39-84D5-95DFB4C9F2CE)]
interface ISpiDevice : IInspectable
requires
Windows.Foundation.IClosable
{
[propget] HRESULT DeviceId([out] [retval] HSTRING* value);
[propget] HRESULT ConnectionSettings([out] [retval] Windows.Devices.Spi.SpiConnectionSettings** value);
HRESULT Write([in] UINT32 __bufferSize, [in] [size_is(__bufferSize)] BYTE* buffer);
HRESULT Read([range(0x00000000, 0x7FFFFFFF)] [in] UINT32 __bufferSize, [out] [size_is(__bufferSize)] BYTE* buffer);
HRESULT TransferSequential([in] UINT32 __writeBufferSize, [in] [size_is(__writeBufferSize)] BYTE* writeBuffer, [range(0x00000000, 0x7FFFFFFF)] [in] UINT32 __readBufferSize, [out] [size_is(__readBufferSize)] BYTE* readBuffer);
HRESULT TransferFullDuplex([in] UINT32 __writeBufferSize, [in] [size_is(__writeBufferSize)] BYTE* writeBuffer, [range(0x00000000, 0x7FFFFFFF)] [in] UINT32 __readBufferSize, [out] [size_is(__readBufferSize)] BYTE* readBuffer);
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[uuid(A278E559-5720-4D3F-BD93-56F5FF5A5879)]
interface ISpiDeviceStatics : IInspectable
{
[overload("GetDeviceSelector")] HRESULT GetDeviceSelector([out] [retval] HSTRING* value);
[overload("GetDeviceSelector")] HRESULT GetDeviceSelectorFromFriendlyName([in] HSTRING friendlyName, [out] [retval] HSTRING* value);
HRESULT GetBusInfo([in] HSTRING busId, [out] [retval] Windows.Devices.Spi.SpiBusInfo** busInfo);
HRESULT FromIdAsync([in] HSTRING busId, [in] Windows.Devices.Spi.SpiConnectionSettings* settings, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Spi.SpiDevice*>** operation);
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[marshaling_behavior(agile)]
runtimeclass SpiBusInfo
{
[default] interface Windows.Devices.Spi.ISpiBusInfo;
}
[activatable(Windows.Devices.Spi.ISpiConnectionSettingsFactory, Windows.Devices.DevicesLowLevelContract, 1.0)]
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[marshaling_behavior(agile)]
runtimeclass SpiConnectionSettings
{
[default] interface Windows.Devices.Spi.ISpiConnectionSettings;
}
[contract(Windows.Devices.DevicesLowLevelContract, 2.0)]
[marshaling_behavior(agile)]
[static(Windows.Devices.Spi.ISpiControllerStatics, Windows.Devices.DevicesLowLevelContract, 2.0)]
runtimeclass SpiController
{
[default] interface Windows.Devices.Spi.ISpiController;
}
[contract(Windows.Devices.DevicesLowLevelContract, 1.0)]
[marshaling_behavior(agile)]
[static(Windows.Devices.Spi.ISpiDeviceStatics, Windows.Devices.DevicesLowLevelContract, 1.0)]
runtimeclass SpiDevice
{
[default] interface Windows.Devices.Spi.ISpiDevice;
interface Windows.Foundation.IClosable;
}
}
}
}