// // 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.Gaming.Input.idl"; // Forward Declare namespace Windows { namespace Foundation { apicontract UniversalApiContract; } } namespace Windows { namespace Gaming { namespace Input { typedef enum GamepadButtons GamepadButtons; typedef struct GamepadReading GamepadReading; } } } namespace Windows { namespace UI { namespace Input { namespace Preview { namespace Injection { typedef enum InjectedInputButtonChangeKind InjectedInputButtonChangeKind; typedef enum InjectedInputKeyOptions InjectedInputKeyOptions; typedef enum InjectedInputMouseOptions InjectedInputMouseOptions; typedef enum InjectedInputPenButtons InjectedInputPenButtons; typedef enum InjectedInputPenParameters InjectedInputPenParameters; typedef enum InjectedInputPointerOptions InjectedInputPointerOptions; typedef enum InjectedInputShortcut InjectedInputShortcut; typedef enum InjectedInputTouchParameters InjectedInputTouchParameters; typedef enum InjectedInputVisualizationMode InjectedInputVisualizationMode; typedef struct InjectedInputPoint InjectedInputPoint; typedef struct InjectedInputPointerInfo InjectedInputPointerInfo; typedef struct InjectedInputRectangle InjectedInputRectangle; interface IInjectedInputGamepadInfo; interface IInjectedInputGamepadInfoFactory; interface IInjectedInputKeyboardInfo; interface IInjectedInputMouseInfo; interface IInjectedInputPenInfo; interface IInjectedInputTouchInfo; interface IInputInjector; interface IInputInjector2; interface IInputInjectorStatics; interface IInputInjectorStatics2; runtimeclass InjectedInputGamepadInfo; runtimeclass InjectedInputKeyboardInfo; runtimeclass InjectedInputMouseInfo; runtimeclass InjectedInputPenInfo; runtimeclass InjectedInputTouchInfo; runtimeclass InputInjector; } } } } } // Generic instantiations namespace Windows { namespace UI { namespace Input { namespace Preview { namespace Injection { declare { 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; } } } } } } // Type definition namespace Windows { namespace UI { namespace Input { namespace Preview { namespace Injection { [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum InjectedInputButtonChangeKind { None = 0, FirstButtonDown = 1, FirstButtonUp = 2, SecondButtonDown = 3, SecondButtonUp = 4, ThirdButtonDown = 5, ThirdButtonUp = 6, FourthButtonDown = 7, FourthButtonUp = 8, FifthButtonDown = 9, FifthButtonUp = 10 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputKeyOptions { None = 0x0, ExtendedKey = 0x1, KeyUp = 0x2, ScanCode = 0x8, Unicode = 0x4 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputMouseOptions { None = 0x0, Move = 0x1, LeftDown = 0x2, LeftUp = 0x4, RightDown = 0x8, RightUp = 0x10, MiddleDown = 0x20, MiddleUp = 0x40, XDown = 0x80, XUp = 0x100, Wheel = 0x800, HWheel = 0x1000, MoveNoCoalesce = 0x2000, VirtualDesk = 0x4000, Absolute = 0x8000 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputPenButtons { None = 0x0, Barrel = 0x1, Inverted = 0x2, Eraser = 0x4 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputPenParameters { None = 0x0, Pressure = 0x1, Rotation = 0x2, TiltX = 0x4, TiltY = 0x8 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputPointerOptions { None = 0x0, New = 0x1, InRange = 0x2, InContact = 0x4, FirstButton = 0x10, SecondButton = 0x20, Primary = 0x2000, Confidence = 0x4000, Canceled = 0x8000, PointerDown = 0x10000, Update = 0x20000, PointerUp = 0x40000, CaptureChanged = 0x200000 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum InjectedInputShortcut { Back = 0, Start = 1, Search = 2 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum InjectedInputTouchParameters { None = 0x0, Contact = 0x1, Orientation = 0x2, Pressure = 0x4 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum InjectedInputVisualizationMode { None = 0, Default = 1, Indirect = 2 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct InjectedInputPoint { INT32 PositionX; INT32 PositionY; }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct InjectedInputPointerInfo { UINT32 PointerId; Windows.UI.Input.Preview.Injection.InjectedInputPointerOptions PointerOptions; Windows.UI.Input.Preview.Injection.InjectedInputPoint PixelLocation; UINT32 TimeOffsetInMilliseconds; UINT64 PerformanceCount; }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct InjectedInputRectangle { INT32 Left; INT32 Top; INT32 Bottom; INT32 Right; }; [contract(Windows.Foundation.UniversalApiContract, 5.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputGamepadInfo)] [uuid(20AE9A3F-DF11-4572-A9AB-D75B8A5E48AD)] interface IInjectedInputGamepadInfo : IInspectable { [propget] HRESULT Buttons([out] [retval] Windows.Gaming.Input.GamepadButtons* value); [propput] HRESULT Buttons([in] Windows.Gaming.Input.GamepadButtons value); [propget] HRESULT LeftThumbstickX([out] [retval] DOUBLE* value); [propput] HRESULT LeftThumbstickX([in] DOUBLE value); [propget] HRESULT LeftThumbstickY([out] [retval] DOUBLE* value); [propput] HRESULT LeftThumbstickY([in] DOUBLE value); [propget] HRESULT LeftTrigger([out] [retval] DOUBLE* value); [propput] HRESULT LeftTrigger([in] DOUBLE value); [propget] HRESULT RightThumbstickX([out] [retval] DOUBLE* value); [propput] HRESULT RightThumbstickX([in] DOUBLE value); [propget] HRESULT RightThumbstickY([out] [retval] DOUBLE* value); [propput] HRESULT RightThumbstickY([in] DOUBLE value); [propget] HRESULT RightTrigger([out] [retval] DOUBLE* value); [propput] HRESULT RightTrigger([in] DOUBLE value); } [contract(Windows.Foundation.UniversalApiContract, 5.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputGamepadInfo)] [uuid(59596876-6C39-4EC4-8B2A-29EF7DE18ACA)] interface IInjectedInputGamepadInfoFactory : IInspectable { [overload("CreateInstance")] HRESULT CreateInstanceFromGamepadReading([in] Windows.Gaming.Input.GamepadReading reading, [out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputGamepadInfo** value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputKeyboardInfo)] [uuid(4B46D140-2B6A-5FFA-7EAE-BD077B052ACD)] interface IInjectedInputKeyboardInfo : IInspectable { [propget] HRESULT KeyOptions([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputKeyOptions* value); [propput] HRESULT KeyOptions([in] Windows.UI.Input.Preview.Injection.InjectedInputKeyOptions value); [propget] HRESULT ScanCode([out] [retval] UINT16* value); [propput] HRESULT ScanCode([in] UINT16 value); [propget] HRESULT VirtualKey([out] [retval] UINT16* value); [propput] HRESULT VirtualKey([in] UINT16 value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputMouseInfo)] [uuid(96F56E6B-E47A-5CF4-418D-8A5FB9670C7D)] interface IInjectedInputMouseInfo : IInspectable { [propget] HRESULT MouseOptions([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputMouseOptions* value); [propput] HRESULT MouseOptions([in] Windows.UI.Input.Preview.Injection.InjectedInputMouseOptions value); [propget] HRESULT MouseData([out] [retval] UINT32* value); [propput] HRESULT MouseData([in] UINT32 value); [propget] HRESULT DeltaY([out] [retval] INT32* value); [propput] HRESULT DeltaY([in] INT32 value); [propget] HRESULT DeltaX([out] [retval] INT32* value); [propput] HRESULT DeltaX([in] INT32 value); [propget] HRESULT TimeOffsetInMilliseconds([out] [retval] UINT32* value); [propput] HRESULT TimeOffsetInMilliseconds([in] UINT32 value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputPenInfo)] [uuid(6B40AD03-CA1E-5527-7E02-2828540BB1D4)] interface IInjectedInputPenInfo : IInspectable { [propget] HRESULT PointerInfo([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputPointerInfo* value); [propput] HRESULT PointerInfo([in] Windows.UI.Input.Preview.Injection.InjectedInputPointerInfo value); [propget] HRESULT PenButtons([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputPenButtons* value); [propput] HRESULT PenButtons([in] Windows.UI.Input.Preview.Injection.InjectedInputPenButtons value); [propget] HRESULT PenParameters([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputPenParameters* value); [propput] HRESULT PenParameters([in] Windows.UI.Input.Preview.Injection.InjectedInputPenParameters value); [propget] HRESULT Pressure([out] [retval] DOUBLE* value); [propput] HRESULT Pressure([in] DOUBLE value); [propget] HRESULT Rotation([out] [retval] DOUBLE* value); [propput] HRESULT Rotation([in] DOUBLE value); [propget] HRESULT TiltX([out] [retval] INT32* value); [propput] HRESULT TiltX([in] INT32 value); [propget] HRESULT TiltY([out] [retval] INT32* value); [propput] HRESULT TiltY([in] INT32 value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InjectedInputTouchInfo)] [uuid(224FD1DF-43E8-5EF5-510A-69CA8C9B4C28)] interface IInjectedInputTouchInfo : IInspectable { [propget] HRESULT Contact([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputRectangle* value); [propput] HRESULT Contact([in] Windows.UI.Input.Preview.Injection.InjectedInputRectangle value); [propget] HRESULT Orientation([out] [retval] INT32* value); [propput] HRESULT Orientation([in] INT32 value); [propget] HRESULT PointerInfo([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputPointerInfo* value); [propput] HRESULT PointerInfo([in] Windows.UI.Input.Preview.Injection.InjectedInputPointerInfo value); [propget] HRESULT Pressure([out] [retval] DOUBLE* value); [propput] HRESULT Pressure([in] DOUBLE value); [propget] HRESULT TouchParameters([out] [retval] Windows.UI.Input.Preview.Injection.InjectedInputTouchParameters* value); [propput] HRESULT TouchParameters([in] Windows.UI.Input.Preview.Injection.InjectedInputTouchParameters value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InputInjector)] [uuid(8EC26F84-0B02-4BD2-AD7A-3D4658BE3E18)] interface IInputInjector : IInspectable { HRESULT InjectKeyboardInput([in] Windows.Foundation.Collections.IIterable* input); HRESULT InjectMouseInput([in] Windows.Foundation.Collections.IIterable* input); HRESULT InitializeTouchInjection([in] Windows.UI.Input.Preview.Injection.InjectedInputVisualizationMode visualMode); HRESULT InjectTouchInput([in] Windows.Foundation.Collections.IIterable* input); HRESULT UninitializeTouchInjection(); HRESULT InitializePenInjection([in] Windows.UI.Input.Preview.Injection.InjectedInputVisualizationMode visualMode); HRESULT InjectPenInput([in] Windows.UI.Input.Preview.Injection.InjectedInputPenInfo* input); HRESULT UninitializePenInjection(); HRESULT InjectShortcut([in] Windows.UI.Input.Preview.Injection.InjectedInputShortcut shortcut); } [contract(Windows.Foundation.UniversalApiContract, 5.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InputInjector)] [uuid(8E7A905D-1453-43A7-9BCB-06D6D7B305F7)] interface IInputInjector2 : IInspectable requires Windows.UI.Input.Preview.Injection.IInputInjector { HRESULT InitializeGamepadInjection(); HRESULT InjectGamepadInput([in] Windows.UI.Input.Preview.Injection.InjectedInputGamepadInfo* input); HRESULT UninitializeGamepadInjection(); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InputInjector)] [uuid(DEAE6943-7402-4141-A5C6-0C01AA57B16A)] interface IInputInjectorStatics : IInspectable { HRESULT TryCreate([out] [retval] Windows.UI.Input.Preview.Injection.InputInjector** instance); } [contract(Windows.Foundation.UniversalApiContract, 5.0)] [exclusiveto(Windows.UI.Input.Preview.Injection.InputInjector)] [uuid(A4DB38FB-DD8C-414F-95EA-F87EF4C0AE6C)] interface IInputInjectorStatics2 : IInspectable requires Windows.UI.Input.Preview.Injection.IInputInjectorStatics { HRESULT TryCreateForAppBroadcastOnly([out] [retval] Windows.UI.Input.Preview.Injection.InputInjector** instance); } [activatable(Windows.Foundation.UniversalApiContract, 5.0)] [activatable(Windows.UI.Input.Preview.Injection.IInjectedInputGamepadInfoFactory, Windows.Foundation.UniversalApiContract, 5.0)] [contract(Windows.Foundation.UniversalApiContract, 5.0)] runtimeclass InjectedInputGamepadInfo { [default] interface Windows.UI.Input.Preview.Injection.IInjectedInputGamepadInfo; } [activatable(Windows.Foundation.UniversalApiContract, 3.0)] [contract(Windows.Foundation.UniversalApiContract, 3.0)] runtimeclass InjectedInputKeyboardInfo { [default] interface Windows.UI.Input.Preview.Injection.IInjectedInputKeyboardInfo; } [activatable(Windows.Foundation.UniversalApiContract, 3.0)] [contract(Windows.Foundation.UniversalApiContract, 3.0)] runtimeclass InjectedInputMouseInfo { [default] interface Windows.UI.Input.Preview.Injection.IInjectedInputMouseInfo; } [activatable(Windows.Foundation.UniversalApiContract, 3.0)] [contract(Windows.Foundation.UniversalApiContract, 3.0)] runtimeclass InjectedInputPenInfo { [default] interface Windows.UI.Input.Preview.Injection.IInjectedInputPenInfo; } [activatable(Windows.Foundation.UniversalApiContract, 3.0)] [contract(Windows.Foundation.UniversalApiContract, 3.0)] runtimeclass InjectedInputTouchInfo { [default] interface Windows.UI.Input.Preview.Injection.IInjectedInputTouchInfo; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [static(Windows.UI.Input.Preview.Injection.IInputInjectorStatics, Windows.Foundation.UniversalApiContract, 3.0)] [static(Windows.UI.Input.Preview.Injection.IInputInjectorStatics2, Windows.Foundation.UniversalApiContract, 5.0)] runtimeclass InputInjector { [default] interface Windows.UI.Input.Preview.Injection.IInputInjector; [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.UI.Input.Preview.Injection.IInputInjector2; } } } } } }