| 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.Storage.Streams.idl";
// Forward Declare
namespace Windows
{
namespace Storage
{
namespace Streams
{
interface IBuffer;
interface IInputStream;
interface IOutputStream;
}
}
}
namespace Windows
{
namespace Devices
{
namespace Custom
{
apicontract CustomDeviceContract;
typedef enum DeviceAccessMode DeviceAccessMode;
typedef enum DeviceSharingMode DeviceSharingMode;
typedef enum IOControlAccessMode IOControlAccessMode;
typedef enum IOControlBufferingMethod IOControlBufferingMethod;
interface ICustomDevice;
interface ICustomDeviceStatics;
interface IIOControlCode;
interface IIOControlCodeFactory;
interface IKnownDeviceTypesStatics;
runtimeclass CustomDevice;
runtimeclass IOControlCode;
runtimeclass KnownDeviceTypes;
}
}
}
// Generic instantiations
namespace Windows
{
namespace Devices
{
namespace Custom
{
declare
{
interface Windows.Foundation.IAsyncOperation<Windows.Devices.Custom.CustomDevice*>;
}
}
}
}
// Type definition
namespace Windows
{
namespace Devices
{
namespace Custom
{
[contractversion(1.0)]
apicontract CustomDeviceContract
{
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
enum DeviceAccessMode
{
Read = 0,
Write = 1,
ReadWrite = 2
};
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
enum DeviceSharingMode
{
Shared = 0,
Exclusive = 1
};
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
enum IOControlAccessMode
{
Any = 0,
Read = 1,
Write = 2,
ReadWrite = 3
};
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
enum IOControlBufferingMethod
{
Buffered = 0,
DirectInput = 1,
DirectOutput = 2,
Neither = 3
};
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[exclusiveto(Windows.Devices.Custom.CustomDevice)]
[uuid(DD30251F-C48B-43BD-BCB1-DEC88F15143E)]
interface ICustomDevice : IInspectable
{
[propget] HRESULT InputStream([out] [retval] Windows.Storage.Streams.IInputStream** value);
[propget] HRESULT OutputStream([out] [retval] Windows.Storage.Streams.IOutputStream** value);
HRESULT SendIOControlAsync([in] Windows.Devices.Custom.IIOControlCode* ioControlCode, [in] Windows.Storage.Streams.IBuffer* inputBuffer, [in] Windows.Storage.Streams.IBuffer* outputBuffer, [out] [retval] Windows.Foundation.IAsyncOperation<UINT32>** operation);
HRESULT TrySendIOControlAsync([in] Windows.Devices.Custom.IIOControlCode* ioControlCode, [in] Windows.Storage.Streams.IBuffer* inputBuffer, [in] Windows.Storage.Streams.IBuffer* outputBuffer, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[exclusiveto(Windows.Devices.Custom.CustomDevice)]
[uuid(C8220312-EF4C-46B1-A58E-EEB308DC8917)]
interface ICustomDeviceStatics : IInspectable
{
HRESULT GetDeviceSelector([in] GUID classGuid, [out] [retval] HSTRING* value);
HRESULT FromIdAsync([in] HSTRING deviceId, [in] Windows.Devices.Custom.DeviceAccessMode desiredAccess, [in] Windows.Devices.Custom.DeviceSharingMode sharingMode, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Custom.CustomDevice*>** operation);
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[uuid(0E9559E7-60C8-4375-A761-7F8808066C60)]
interface IIOControlCode : IInspectable
{
[propget] HRESULT AccessMode([out] [retval] Windows.Devices.Custom.IOControlAccessMode* value);
[propget] HRESULT BufferingMethod([out] [retval] Windows.Devices.Custom.IOControlBufferingMethod* value);
[propget] HRESULT Function([out] [retval] UINT16* value);
[propget] HRESULT DeviceType([out] [retval] UINT16* value);
[propget] HRESULT ControlCode([out] [retval] UINT32* value);
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[exclusiveto(Windows.Devices.Custom.IOControlCode)]
[uuid(856A7CF0-4C11-44AE-AFC6-B8D4A212788F)]
interface IIOControlCodeFactory : IInspectable
{
HRESULT CreateIOControlCode([in] UINT16 deviceType, [in] UINT16 function, [in] Windows.Devices.Custom.IOControlAccessMode accessMode, [in] Windows.Devices.Custom.IOControlBufferingMethod bufferingMethod, [out] [retval] Windows.Devices.Custom.IOControlCode** instance);
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[exclusiveto(Windows.Devices.Custom.KnownDeviceTypes)]
[uuid(EE5479C2-5448-45DA-AD1B-24948C239094)]
interface IKnownDeviceTypesStatics : IInspectable
{
[propget] HRESULT Unknown([out] [retval] UINT16* value);
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[marshaling_behavior(agile)]
[static(Windows.Devices.Custom.ICustomDeviceStatics, Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[threading(both)]
runtimeclass CustomDevice
{
[default] interface Windows.Devices.Custom.ICustomDevice;
}
[activatable(Windows.Devices.Custom.IIOControlCodeFactory, Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[marshaling_behavior(agile)]
[threading(both)]
runtimeclass IOControlCode
{
[default] interface Windows.Devices.Custom.IIOControlCode;
}
[contract(Windows.Devices.Custom.CustomDeviceContract, 1.0)]
[marshaling_behavior(agile)]
[static(Windows.Devices.Custom.IKnownDeviceTypesStatics, Windows.Devices.Custom.CustomDeviceContract, 1.0)]
runtimeclass KnownDeviceTypes
{
}
}
}
}