// // 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.Storage.Streams.idl"; // Forward Declare namespace Windows { namespace Foundation { interface IAsyncAction; interface IClosable; typedef struct TimeSpan TimeSpan; apicontract UniversalApiContract; } } namespace Windows { namespace Storage { namespace Streams { interface IBuffer; interface IInputStream; interface IOutputStream; } } } namespace Windows { namespace Devices { namespace Usb { typedef enum UsbControlRecipient UsbControlRecipient; typedef enum UsbControlTransferType UsbControlTransferType; typedef enum UsbEndpointType UsbEndpointType; typedef enum UsbReadOptions UsbReadOptions; typedef enum UsbTransferDirection UsbTransferDirection; typedef enum UsbWriteOptions UsbWriteOptions; interface IUsbBulkInEndpointDescriptor; interface IUsbBulkInPipe; interface IUsbBulkOutEndpointDescriptor; interface IUsbBulkOutPipe; interface IUsbConfiguration; interface IUsbConfigurationDescriptor; interface IUsbConfigurationDescriptorStatics; interface IUsbControlRequestType; interface IUsbDescriptor; interface IUsbDevice; interface IUsbDeviceClass; interface IUsbDeviceClasses; interface IUsbDeviceClassesStatics; interface IUsbDeviceDescriptor; interface IUsbDeviceStatics; interface IUsbEndpointDescriptor; interface IUsbEndpointDescriptorStatics; interface IUsbInterface; interface IUsbInterfaceDescriptor; interface IUsbInterfaceDescriptorStatics; interface IUsbInterfaceSetting; interface IUsbInterruptInEndpointDescriptor; interface IUsbInterruptInEventArgs; interface IUsbInterruptInPipe; interface IUsbInterruptOutEndpointDescriptor; interface IUsbInterruptOutPipe; interface IUsbSetupPacket; interface IUsbSetupPacketFactory; runtimeclass UsbBulkInEndpointDescriptor; runtimeclass UsbBulkInPipe; runtimeclass UsbBulkOutEndpointDescriptor; runtimeclass UsbBulkOutPipe; runtimeclass UsbConfiguration; runtimeclass UsbConfigurationDescriptor; runtimeclass UsbControlRequestType; runtimeclass UsbDescriptor; runtimeclass UsbDevice; runtimeclass UsbDeviceClass; runtimeclass UsbDeviceClasses; runtimeclass UsbDeviceDescriptor; runtimeclass UsbEndpointDescriptor; runtimeclass UsbInterface; runtimeclass UsbInterfaceDescriptor; runtimeclass UsbInterfaceSetting; runtimeclass UsbInterruptInEndpointDescriptor; runtimeclass UsbInterruptInEventArgs; runtimeclass UsbInterruptInPipe; runtimeclass UsbInterruptOutEndpointDescriptor; runtimeclass UsbInterruptOutPipe; runtimeclass UsbSetupPacket; } } } // Generic instantiations namespace Windows { namespace Devices { namespace Usb { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Devices { namespace Usb { [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum UsbControlRecipient { Device = 0, SpecifiedInterface = 1, Endpoint = 2, Other = 3, DefaultInterface = 4 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum UsbControlTransferType { Standard = 0, Class = 1, Vendor = 2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum UsbEndpointType { Control = 0, Isochronous = 1, Bulk = 2, Interrupt = 3 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [flags] enum UsbReadOptions { None = 0x0, AutoClearStall = 0x1, OverrideAutomaticBufferManagement = 0x2, IgnoreShortPacket = 0x4, AllowPartialReads = 0x8 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum UsbTransferDirection { Out = 0, In = 1 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [flags] enum UsbWriteOptions { None = 0x0, AutoClearStall = 0x1, ShortPacketTerminate = 0x2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbBulkInEndpointDescriptor)] [uuid(3C6E4846-06CF-42A9-9DC2-971C1B14B6E3)] interface IUsbBulkInEndpointDescriptor : IInspectable { [propget] HRESULT MaxPacketSize([out] [retval] UINT32* value); [propget] HRESULT EndpointNumber([out] [retval] BYTE* value); [propget] HRESULT Pipe([out] [retval] Windows.Devices.Usb.UsbBulkInPipe** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbBulkInPipe)] [uuid(F01D2D3B-4548-4D50-B326-D82CDABE1220)] interface IUsbBulkInPipe : IInspectable { [propget] HRESULT MaxTransferSizeBytes([out] [retval] UINT32* value); [propget] HRESULT EndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbBulkInEndpointDescriptor** value); HRESULT ClearStallAsync([out] [retval] Windows.Foundation.IAsyncAction** operation); [propput] HRESULT ReadOptions([in] Windows.Devices.Usb.UsbReadOptions value); [propget] HRESULT ReadOptions([out] [retval] Windows.Devices.Usb.UsbReadOptions* value); HRESULT FlushBuffer(); [propget] HRESULT InputStream([out] [retval] Windows.Storage.Streams.IInputStream** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbBulkOutEndpointDescriptor)] [uuid(2820847A-FFEE-4F60-9BE1-956CAC3ECB65)] interface IUsbBulkOutEndpointDescriptor : IInspectable { [propget] HRESULT MaxPacketSize([out] [retval] UINT32* value); [propget] HRESULT EndpointNumber([out] [retval] BYTE* value); [propget] HRESULT Pipe([out] [retval] Windows.Devices.Usb.UsbBulkOutPipe** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbBulkOutPipe)] [uuid(A8E9EE6E-0115-45AA-8B21-37B225BCCEE7)] interface IUsbBulkOutPipe : IInspectable { [propget] HRESULT EndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbBulkOutEndpointDescriptor** value); HRESULT ClearStallAsync([out] [retval] Windows.Foundation.IAsyncAction** operation); [propput] HRESULT WriteOptions([in] Windows.Devices.Usb.UsbWriteOptions value); [propget] HRESULT WriteOptions([out] [retval] Windows.Devices.Usb.UsbWriteOptions* value); [propget] HRESULT OutputStream([out] [retval] Windows.Storage.Streams.IOutputStream** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbConfiguration)] [uuid(68177429-36A9-46D7-B873-FC689251EC30)] interface IUsbConfiguration : IInspectable { [propget] HRESULT UsbInterfaces([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT ConfigurationDescriptor([out] [retval] Windows.Devices.Usb.UsbConfigurationDescriptor** value); [propget] HRESULT Descriptors([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbConfigurationDescriptor)] [uuid(F2176D92-B442-407A-8207-7D646C0385F3)] interface IUsbConfigurationDescriptor : IInspectable { [propget] HRESULT ConfigurationValue([out] [retval] BYTE* value); [propget] HRESULT MaxPowerMilliamps([out] [retval] UINT32* value); [propget] HRESULT SelfPowered([out] [retval] boolean* value); [propget] HRESULT RemoteWakeup([out] [retval] boolean* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbConfigurationDescriptor)] [uuid(424CED93-E740-40A1-92BD-DA120EA04914)] interface IUsbConfigurationDescriptorStatics : IInspectable { HRESULT TryParse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] Windows.Devices.Usb.UsbConfigurationDescriptor** parsed, [out] [retval] boolean* success); HRESULT Parse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] [retval] Windows.Devices.Usb.UsbConfigurationDescriptor** parsed); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbControlRequestType)] [uuid(8E9465A6-D73D-46DE-94BE-AAE7F07C0F5C)] interface IUsbControlRequestType : IInspectable { [propget] HRESULT Direction([out] [retval] Windows.Devices.Usb.UsbTransferDirection* value); [propput] HRESULT Direction([in] Windows.Devices.Usb.UsbTransferDirection value); [propget] HRESULT ControlTransferType([out] [retval] Windows.Devices.Usb.UsbControlTransferType* value); [propput] HRESULT ControlTransferType([in] Windows.Devices.Usb.UsbControlTransferType value); [propget] HRESULT Recipient([out] [retval] Windows.Devices.Usb.UsbControlRecipient* value); [propput] HRESULT Recipient([in] Windows.Devices.Usb.UsbControlRecipient value); [propget] HRESULT AsByte([out] [retval] BYTE* value); [propput] HRESULT AsByte([in] BYTE value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDescriptor)] [uuid(0A89F216-5F9D-4874-8904-DA9AD3F5528F)] interface IUsbDescriptor : IInspectable { [propget] HRESULT Length([out] [retval] BYTE* value); [propget] HRESULT DescriptorType([out] [retval] BYTE* value); HRESULT ReadDescriptorBuffer([in] Windows.Storage.Streams.IBuffer* buffer); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDevice)] [uuid(5249B992-C456-44D5-AD5E-24F5A089F63B)] interface IUsbDevice : IInspectable requires Windows.Foundation.IClosable { [overload("SendControlOutTransferAsync")] HRESULT SendControlOutTransferAsync([in] Windows.Devices.Usb.UsbSetupPacket* setupPacket, [in] Windows.Storage.Streams.IBuffer* buffer, [out] [retval] Windows.Foundation.IAsyncOperation** operation); [overload("SendControlOutTransferAsync")] HRESULT SendControlOutTransferAsyncNoBuffer([in] Windows.Devices.Usb.UsbSetupPacket* setupPacket, [out] [retval] Windows.Foundation.IAsyncOperation** operation); [overload("SendControlInTransferAsync")] HRESULT SendControlInTransferAsync([in] Windows.Devices.Usb.UsbSetupPacket* setupPacket, [in] Windows.Storage.Streams.IBuffer* buffer, [out] [retval] Windows.Foundation.IAsyncOperation** operation); [overload("SendControlInTransferAsync")] HRESULT SendControlInTransferAsyncNoBuffer([in] Windows.Devices.Usb.UsbSetupPacket* setupPacket, [out] [retval] Windows.Foundation.IAsyncOperation** operation); [propget] HRESULT DefaultInterface([out] [retval] Windows.Devices.Usb.UsbInterface** value); [propget] HRESULT DeviceDescriptor([out] [retval] Windows.Devices.Usb.UsbDeviceDescriptor** value); [propget] HRESULT Configuration([out] [retval] Windows.Devices.Usb.UsbConfiguration** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDeviceClass)] [uuid(051942F9-845E-47EB-B12A-38F2F617AFE7)] interface IUsbDeviceClass : IInspectable { [propget] HRESULT ClassCode([out] [retval] BYTE* value); [propput] HRESULT ClassCode([in] BYTE value); [propget] HRESULT SubclassCode([out] [retval] Windows.Foundation.IReference** value); [propput] HRESULT SubclassCode([in] Windows.Foundation.IReference* value); [propget] HRESULT ProtocolCode([out] [retval] Windows.Foundation.IReference** value); [propput] HRESULT ProtocolCode([in] Windows.Foundation.IReference* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDeviceClasses)] [uuid(686F955D-9B92-4B30-9781-C22C55AC35CB)] interface IUsbDeviceClasses : IInspectable { } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDeviceClasses)] [uuid(B20B0527-C580-4599-A165-981B4FD03230)] interface IUsbDeviceClassesStatics : IInspectable { [propget] HRESULT CdcControl([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT Physical([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT PersonalHealthcare([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT ActiveSync([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT PalmSync([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT DeviceFirmwareUpdate([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT Irda([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT Measurement([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); [propget] HRESULT VendorSpecific([out] [retval] Windows.Devices.Usb.UsbDeviceClass** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDeviceDescriptor)] [uuid(1F48D1F6-BA97-4322-B92C-B5B189216588)] interface IUsbDeviceDescriptor : IInspectable { [propget] HRESULT BcdUsb([out] [retval] UINT32* value); [propget] HRESULT MaxPacketSize0([out] [retval] BYTE* value); [propget] HRESULT VendorId([out] [retval] UINT32* value); [propget] HRESULT ProductId([out] [retval] UINT32* value); [propget] HRESULT BcdDeviceRevision([out] [retval] UINT32* value); [propget] HRESULT NumberOfConfigurations([out] [retval] BYTE* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbDevice)] [uuid(066B85A2-09B7-4446-8502-6FE6DCAA7309)] interface IUsbDeviceStatics : IInspectable { [overload("GetDeviceSelector")] HRESULT GetDeviceSelector([in] UINT32 vendorId, [in] UINT32 productId, [in] GUID winUsbInterfaceClass, [out] [retval] HSTRING* value); [overload("GetDeviceSelector")] HRESULT GetDeviceSelectorGuidOnly([in] GUID winUsbInterfaceClass, [out] [retval] HSTRING* value); [overload("GetDeviceSelector")] HRESULT GetDeviceSelectorVidPidOnly([in] UINT32 vendorId, [in] UINT32 productId, [out] [retval] HSTRING* value); HRESULT GetDeviceClassSelector([in] Windows.Devices.Usb.UsbDeviceClass* usbClass, [out] [retval] HSTRING* value); HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbEndpointDescriptor)] [uuid(6B4862D9-8DF7-4B40-AC83-578F139F0575)] interface IUsbEndpointDescriptor : IInspectable { [propget] HRESULT EndpointNumber([out] [retval] BYTE* value); [propget] HRESULT Direction([out] [retval] Windows.Devices.Usb.UsbTransferDirection* value); [propget] HRESULT EndpointType([out] [retval] Windows.Devices.Usb.UsbEndpointType* value); [propget] HRESULT AsBulkInEndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbBulkInEndpointDescriptor** value); [propget] HRESULT AsInterruptInEndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbInterruptInEndpointDescriptor** value); [propget] HRESULT AsBulkOutEndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbBulkOutEndpointDescriptor** value); [propget] HRESULT AsInterruptOutEndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbInterruptOutEndpointDescriptor** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbEndpointDescriptor)] [uuid(C890B201-9A6A-495E-A82C-295B9E708106)] interface IUsbEndpointDescriptorStatics : IInspectable { HRESULT TryParse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] Windows.Devices.Usb.UsbEndpointDescriptor** parsed, [out] [retval] boolean* success); HRESULT Parse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] [retval] Windows.Devices.Usb.UsbEndpointDescriptor** parsed); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterface)] [uuid(A0322B95-7F47-48AB-A727-678C25BE2112)] interface IUsbInterface : IInspectable { [propget] HRESULT BulkInPipes([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterruptInPipes([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT BulkOutPipes([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterruptOutPipes([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterfaceSettings([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterfaceNumber([out] [retval] BYTE* value); [propget] HRESULT Descriptors([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterfaceDescriptor)] [uuid(199670C7-B7EE-4F90-8CD5-94A2E257598A)] interface IUsbInterfaceDescriptor : IInspectable { [propget] HRESULT ClassCode([out] [retval] BYTE* value); [propget] HRESULT SubclassCode([out] [retval] BYTE* value); [propget] HRESULT ProtocolCode([out] [retval] BYTE* value); [propget] HRESULT AlternateSettingNumber([out] [retval] BYTE* value); [propget] HRESULT InterfaceNumber([out] [retval] BYTE* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterfaceDescriptor)] [uuid(E34A9FF5-77D6-48B6-B0BE-16C6422316FE)] interface IUsbInterfaceDescriptorStatics : IInspectable { HRESULT TryParse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] Windows.Devices.Usb.UsbInterfaceDescriptor** parsed, [out] [retval] boolean* success); HRESULT Parse([in] Windows.Devices.Usb.UsbDescriptor* descriptor, [out] [retval] Windows.Devices.Usb.UsbInterfaceDescriptor** parsed); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterfaceSetting)] [uuid(1827BBA7-8DA7-4AF7-8F4C-7F3032E781F5)] interface IUsbInterfaceSetting : IInspectable { [propget] HRESULT BulkInEndpoints([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterruptInEndpoints([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT BulkOutEndpoints([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT InterruptOutEndpoints([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT Selected([out] [retval] boolean* value); HRESULT SelectSettingAsync([out] [retval] Windows.Foundation.IAsyncAction** operation); [propget] HRESULT InterfaceDescriptor([out] [retval] Windows.Devices.Usb.UsbInterfaceDescriptor** value); [propget] HRESULT Descriptors([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterruptInEndpointDescriptor)] [uuid(C0528967-C911-4C3A-86B2-419C2DA89039)] interface IUsbInterruptInEndpointDescriptor : IInspectable { [propget] HRESULT MaxPacketSize([out] [retval] UINT32* value); [propget] HRESULT EndpointNumber([out] [retval] BYTE* value); [propget] HRESULT Interval([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT Pipe([out] [retval] Windows.Devices.Usb.UsbInterruptInPipe** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterruptInEventArgs)] [uuid(B7B04092-1418-4936-8209-299CF5605583)] interface IUsbInterruptInEventArgs : IInspectable { [propget] HRESULT InterruptData([out] [retval] Windows.Storage.Streams.IBuffer** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterruptInPipe)] [uuid(FA007116-84D7-48C7-8A3F-4C0B235F2EA6)] interface IUsbInterruptInPipe : IInspectable { [propget] HRESULT EndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbInterruptInEndpointDescriptor** value); HRESULT ClearStallAsync([out] [retval] Windows.Foundation.IAsyncAction** operation); [eventadd] HRESULT DataReceived([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT DataReceived([in] EventRegistrationToken token); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterruptOutEndpointDescriptor)] [uuid(CC9FED81-10CA-4533-952D-9E278341E80F)] interface IUsbInterruptOutEndpointDescriptor : IInspectable { [propget] HRESULT MaxPacketSize([out] [retval] UINT32* value); [propget] HRESULT EndpointNumber([out] [retval] BYTE* value); [propget] HRESULT Interval([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT Pipe([out] [retval] Windows.Devices.Usb.UsbInterruptOutPipe** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbInterruptOutPipe)] [uuid(E984C8A9-AAF9-49D0-B96C-F661AB4A7F95)] interface IUsbInterruptOutPipe : IInspectable { [propget] HRESULT EndpointDescriptor([out] [retval] Windows.Devices.Usb.UsbInterruptOutEndpointDescriptor** value); HRESULT ClearStallAsync([out] [retval] Windows.Foundation.IAsyncAction** operation); [propput] HRESULT WriteOptions([in] Windows.Devices.Usb.UsbWriteOptions value); [propget] HRESULT WriteOptions([out] [retval] Windows.Devices.Usb.UsbWriteOptions* value); [propget] HRESULT OutputStream([out] [retval] Windows.Storage.Streams.IOutputStream** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbSetupPacket)] [uuid(104BA132-C78F-4C51-B654-E49D02F2CB03)] interface IUsbSetupPacket : IInspectable { [propget] HRESULT RequestType([out] [retval] Windows.Devices.Usb.UsbControlRequestType** value); [propput] HRESULT RequestType([in] Windows.Devices.Usb.UsbControlRequestType* value); [propget] HRESULT Request([out] [retval] BYTE* value); [propput] HRESULT Request([in] BYTE value); [propget] HRESULT Value([out] [retval] UINT32* value); [propput] HRESULT Value([in] UINT32 value); [propget] HRESULT Index([out] [retval] UINT32* value); [propput] HRESULT Index([in] UINT32 value); [propget] HRESULT Length([out] [retval] UINT32* value); [propput] HRESULT Length([in] UINT32 value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Usb.UsbSetupPacket)] [uuid(C9257D50-1B2E-4A41-A2A7-338F0CEF3C14)] interface IUsbSetupPacketFactory : IInspectable { HRESULT CreateWithEightByteBuffer([in] Windows.Storage.Streams.IBuffer* eightByteBuffer, [out] [retval] Windows.Devices.Usb.UsbSetupPacket** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbBulkInEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbBulkInEndpointDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbBulkInPipe { [default] interface Windows.Devices.Usb.IUsbBulkInPipe; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbBulkOutEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbBulkOutEndpointDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbBulkOutPipe { [default] interface Windows.Devices.Usb.IUsbBulkOutPipe; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbConfiguration { [default] interface Windows.Devices.Usb.IUsbConfiguration; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbConfigurationDescriptorStatics, Windows.Foundation.UniversalApiContract, 1.0)] runtimeclass UsbConfigurationDescriptor { [default] interface Windows.Devices.Usb.IUsbConfigurationDescriptor; } [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbControlRequestType { [default] interface Windows.Devices.Usb.IUsbControlRequestType; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbDescriptor { [default] interface Windows.Devices.Usb.IUsbDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbDeviceStatics, Windows.Foundation.UniversalApiContract, 1.0)] runtimeclass UsbDevice { [default] interface Windows.Devices.Usb.IUsbDevice; interface Windows.Foundation.IClosable; } [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbDeviceClass { [default] interface Windows.Devices.Usb.IUsbDeviceClass; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbDeviceClassesStatics, Windows.Foundation.UniversalApiContract, 1.0)] runtimeclass UsbDeviceClasses { [default] interface Windows.Devices.Usb.IUsbDeviceClasses; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbDeviceDescriptor { [default] interface Windows.Devices.Usb.IUsbDeviceDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbEndpointDescriptorStatics, Windows.Foundation.UniversalApiContract, 1.0)] runtimeclass UsbEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbEndpointDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterface { [default] interface Windows.Devices.Usb.IUsbInterface; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbInterfaceDescriptorStatics, Windows.Foundation.UniversalApiContract, 1.0)] runtimeclass UsbInterfaceDescriptor { [default] interface Windows.Devices.Usb.IUsbInterfaceDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterfaceSetting { [default] interface Windows.Devices.Usb.IUsbInterfaceSetting; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterruptInEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbInterruptInEndpointDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterruptInEventArgs { [default] interface Windows.Devices.Usb.IUsbInterruptInEventArgs; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterruptInPipe { [default] interface Windows.Devices.Usb.IUsbInterruptInPipe; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterruptOutEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbInterruptOutEndpointDescriptor; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbInterruptOutPipe { [default] interface Windows.Devices.Usb.IUsbInterruptOutPipe; } [activatable(Windows.Devices.Usb.IUsbSetupPacketFactory, Windows.Foundation.UniversalApiContract, 1.0)] [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass UsbSetupPacket { [default] interface Windows.Devices.Usb.IUsbSetupPacket; } } } }