// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0014 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "Windows.Foundation.idl"; import "Windows.Storage.Streams.idl"; // Additional imports to ensure that all required headers are included cpp_quote("#if defined(__cplusplus)") cpp_quote("}") cpp_quote("#endif // defined(__cplusplus)") cpp_quote("#include ") cpp_quote("#if !defined(__windows2Estorage2Estreams_h__)") cpp_quote("#include ") cpp_quote("#endif // !defined(__windows2Estorage2Estreams_h__)") cpp_quote("#if defined(__cplusplus)") cpp_quote("extern \"C\" {") cpp_quote("#endif // defined(__cplusplus)") // Forward Declare namespace Windows { namespace Foundation { interface IAsyncAction; interface IClosable; typedef struct TimeSpan TimeSpan; } } namespace Windows { namespace Storage { namespace Streams { interface IBuffer; interface IInputStream; interface IOutputStream; } } } namespace Windows { namespace Devices { namespace Usb { typedef enum UsbTransferDirection UsbTransferDirection; typedef enum UsbEndpointType UsbEndpointType; typedef enum UsbControlRecipient UsbControlRecipient; typedef enum UsbControlTransferType UsbControlTransferType; typedef enum UsbReadOptions UsbReadOptions; typedef enum UsbWriteOptions UsbWriteOptions; interface IUsbControlRequestType; interface IUsbSetupPacketFactory; interface IUsbSetupPacket; interface IUsbDeviceClass; interface IUsbDeviceClassesStatics; interface IUsbDeviceClasses; interface IUsbDeviceStatics; interface IUsbDeviceDescriptor; interface IUsbConfigurationDescriptor; interface IUsbConfigurationDescriptorStatics; interface IUsbInterfaceDescriptor; interface IUsbInterfaceDescriptorStatics; interface IUsbEndpointDescriptor; interface IUsbEndpointDescriptorStatics; interface IUsbDescriptor; interface IUsbInterruptInEventArgs; interface IUsbBulkInPipe; interface IUsbInterruptInPipe; interface IUsbBulkOutPipe; interface IUsbInterruptOutPipe; interface IUsbConfiguration; interface IUsbInterface; interface IUsbInterfaceSetting; interface IUsbBulkInEndpointDescriptor; interface IUsbInterruptInEndpointDescriptor; interface IUsbBulkOutEndpointDescriptor; interface IUsbInterruptOutEndpointDescriptor; interface IUsbDevice; runtimeclass UsbControlRequestType; runtimeclass UsbSetupPacket; runtimeclass UsbDeviceClass; runtimeclass UsbDeviceClasses; runtimeclass UsbDevice; runtimeclass UsbInterface; runtimeclass UsbDeviceDescriptor; runtimeclass UsbConfiguration; runtimeclass UsbDescriptor; runtimeclass UsbConfigurationDescriptor; runtimeclass UsbInterfaceDescriptor; runtimeclass UsbBulkInEndpointDescriptor; runtimeclass UsbInterruptInEndpointDescriptor; runtimeclass UsbBulkOutEndpointDescriptor; runtimeclass UsbInterruptOutEndpointDescriptor; runtimeclass UsbEndpointDescriptor; runtimeclass UsbInterruptInEventArgs; runtimeclass UsbInterruptInPipe; runtimeclass UsbBulkInPipe; runtimeclass UsbBulkOutPipe; runtimeclass UsbInterruptOutPipe; runtimeclass UsbInterfaceSetting; } } } // 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 { [version(0x0A000000)] enum UsbTransferDirection { Out = 0, In = 1 }; [version(0x0A000000)] enum UsbEndpointType { Control = 0, Isochronous = 1, Bulk = 2, Interrupt = 3 }; [version(0x0A000000)] enum UsbControlRecipient { Device = 0, SpecifiedInterface = 1, Endpoint = 2, Other = 3, DefaultInterface = 4 }; [version(0x0A000000)] enum UsbControlTransferType { Standard = 0, Class = 1, Vendor = 2 }; [flags] [version(0x0A000000)] enum UsbReadOptions { None = 0x0, AutoClearStall = 0x1, OverrideAutomaticBufferManagement = 0x2, IgnoreShortPacket = 0x4, AllowPartialReads = 0x8 }; [flags] [version(0x0A000000)] enum UsbWriteOptions { None = 0x0, AutoClearStall = 0x1, ShortPacketTerminate = 0x2 }; [exclusiveto(Windows.Devices.Usb.UsbControlRequestType)] [uuid(8E9465A6-D73D-46DE-94BE-AAE7F07C0F5C)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbSetupPacket)] [uuid(C9257D50-1B2E-4A41-A2A7-338F0CEF3C14)] [version(0x0A000000)] interface IUsbSetupPacketFactory : IInspectable { HRESULT CreateWithEightByteBuffer([in] Windows.Storage.Streams.IBuffer* eightByteBuffer, [out] [retval] Windows.Devices.Usb.UsbSetupPacket** value); } [exclusiveto(Windows.Devices.Usb.UsbSetupPacket)] [uuid(104BA132-C78F-4C51-B654-E49D02F2CB03)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDeviceClass)] [uuid(051942F9-845E-47EB-B12A-38F2F617AFE7)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDeviceClasses)] [uuid(B20B0527-C580-4599-A165-981B4FD03230)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDeviceClasses)] [uuid(686F955D-9B92-4B30-9781-C22C55AC35CB)] [version(0x0A000000)] interface IUsbDeviceClasses : IInspectable { } [exclusiveto(Windows.Devices.Usb.UsbDevice)] [uuid(066B85A2-09B7-4446-8502-6FE6DCAA7309)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDeviceDescriptor)] [uuid(1F48D1F6-BA97-4322-B92C-B5B189216588)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbConfigurationDescriptor)] [uuid(F2176D92-B442-407A-8207-7D646C0385F3)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbConfigurationDescriptor)] [uuid(424CED93-E740-40A1-92BD-DA120EA04914)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterfaceDescriptor)] [uuid(199670C7-B7EE-4F90-8CD5-94A2E257598A)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterfaceDescriptor)] [uuid(E34A9FF5-77D6-48B6-B0BE-16C6422316FE)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbEndpointDescriptor)] [uuid(6B4862D9-8DF7-4B40-AC83-578F139F0575)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbEndpointDescriptor)] [uuid(C890B201-9A6A-495E-A82C-295B9E708106)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDescriptor)] [uuid(0A89F216-5F9D-4874-8904-DA9AD3F5528F)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterruptInEventArgs)] [uuid(B7B04092-1418-4936-8209-299CF5605583)] [version(0x0A000000)] interface IUsbInterruptInEventArgs : IInspectable { [propget] HRESULT InterruptData([out] [retval] Windows.Storage.Streams.IBuffer** value); } [exclusiveto(Windows.Devices.Usb.UsbBulkInPipe)] [uuid(F01D2D3B-4548-4D50-B326-D82CDABE1220)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterruptInPipe)] [uuid(FA007116-84D7-48C7-8A3F-4C0B235F2EA6)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbBulkOutPipe)] [uuid(A8E9EE6E-0115-45AA-8B21-37B225BCCEE7)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterruptOutPipe)] [uuid(E984C8A9-AAF9-49D0-B96C-F661AB4A7F95)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbConfiguration)] [uuid(68177429-36A9-46D7-B873-FC689251EC30)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterface)] [uuid(A0322B95-7F47-48AB-A727-678C25BE2112)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterfaceSetting)] [uuid(1827BBA7-8DA7-4AF7-8F4C-7F3032E781F5)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbBulkInEndpointDescriptor)] [uuid(3C6E4846-06CF-42A9-9DC2-971C1B14B6E3)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterruptInEndpointDescriptor)] [uuid(C0528967-C911-4C3A-86B2-419C2DA89039)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbBulkOutEndpointDescriptor)] [uuid(2820847A-FFEE-4F60-9BE1-956CAC3ECB65)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbInterruptOutEndpointDescriptor)] [uuid(CC9FED81-10CA-4533-952D-9E278341E80F)] [version(0x0A000000)] 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); } [exclusiveto(Windows.Devices.Usb.UsbDevice)] [uuid(5249B992-C456-44D5-AD5E-24F5A089F63B)] [version(0x0A000000)] 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); } [activatable(0x0A000000)] [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbControlRequestType { [default] interface Windows.Devices.Usb.IUsbControlRequestType; } [activatable(0x0A000000)] [activatable(Windows.Devices.Usb.IUsbSetupPacketFactory, 0x0A000000)] [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbSetupPacket { [default] interface Windows.Devices.Usb.IUsbSetupPacket; } [activatable(0x0A000000)] [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbDeviceClass { [default] interface Windows.Devices.Usb.IUsbDeviceClass; } [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbDeviceClassesStatics, 0x0A000000)] [version(0x0A000000)] runtimeclass UsbDeviceClasses { [default] interface Windows.Devices.Usb.IUsbDeviceClasses; } [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbDeviceStatics, 0x0A000000)] [version(0x0A000000)] runtimeclass UsbDevice { [default] interface Windows.Devices.Usb.IUsbDevice; interface Windows.Foundation.IClosable; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterface { [default] interface Windows.Devices.Usb.IUsbInterface; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbDeviceDescriptor { [default] interface Windows.Devices.Usb.IUsbDeviceDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbConfiguration { [default] interface Windows.Devices.Usb.IUsbConfiguration; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbDescriptor { [default] interface Windows.Devices.Usb.IUsbDescriptor; } [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbConfigurationDescriptorStatics, 0x0A000000)] [version(0x0A000000)] runtimeclass UsbConfigurationDescriptor { [default] interface Windows.Devices.Usb.IUsbConfigurationDescriptor; } [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbInterfaceDescriptorStatics, 0x0A000000)] [version(0x0A000000)] runtimeclass UsbInterfaceDescriptor { [default] interface Windows.Devices.Usb.IUsbInterfaceDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbBulkInEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbBulkInEndpointDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterruptInEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbInterruptInEndpointDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbBulkOutEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbBulkOutEndpointDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterruptOutEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbInterruptOutEndpointDescriptor; } [marshaling_behavior(agile)] [static(Windows.Devices.Usb.IUsbEndpointDescriptorStatics, 0x0A000000)] [version(0x0A000000)] runtimeclass UsbEndpointDescriptor { [default] interface Windows.Devices.Usb.IUsbEndpointDescriptor; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterruptInEventArgs { [default] interface Windows.Devices.Usb.IUsbInterruptInEventArgs; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterruptInPipe { [default] interface Windows.Devices.Usb.IUsbInterruptInPipe; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbBulkInPipe { [default] interface Windows.Devices.Usb.IUsbBulkInPipe; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbBulkOutPipe { [default] interface Windows.Devices.Usb.IUsbBulkOutPipe; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterruptOutPipe { [default] interface Windows.Devices.Usb.IUsbInterruptOutPipe; } [marshaling_behavior(agile)] [version(0x0A000000)] runtimeclass UsbInterfaceSetting { [default] interface Windows.Devices.Usb.IUsbInterfaceSetting; } } } }