// // 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.Haptics.idl"; import "Windows.Devices.Power.idl"; import "Windows.Gaming.Input.ForceFeedback.idl"; import "Windows.System.idl"; // Forward Declare namespace Windows { namespace Devices { namespace Haptics { runtimeclass SimpleHapticsController; } } } namespace Windows { namespace Devices { namespace Power { runtimeclass BatteryReport; } } } namespace Windows { namespace Foundation { apicontract UniversalApiContract; } } namespace Windows { namespace Gaming { namespace Input { namespace ForceFeedback { runtimeclass ForceFeedbackMotor; } } } } namespace Windows { namespace System { runtimeclass User; runtimeclass UserChangedEventArgs; } } namespace Windows { namespace Gaming { namespace Input { apicontract GamingInputPreviewContract; typedef enum ArcadeStickButtons ArcadeStickButtons; typedef enum FlightStickButtons FlightStickButtons; typedef enum GameControllerButtonLabel GameControllerButtonLabel; typedef enum GameControllerSwitchKind GameControllerSwitchKind; typedef enum GameControllerSwitchPosition GameControllerSwitchPosition; typedef enum GamepadButtons GamepadButtons; typedef enum OptionalUINavigationButtons OptionalUINavigationButtons; typedef enum RacingWheelButtons RacingWheelButtons; typedef enum RequiredUINavigationButtons RequiredUINavigationButtons; typedef struct ArcadeStickReading ArcadeStickReading; typedef struct FlightStickReading FlightStickReading; typedef struct GamepadReading GamepadReading; typedef struct GamepadVibration GamepadVibration; typedef struct RacingWheelReading RacingWheelReading; typedef struct UINavigationReading UINavigationReading; interface IArcadeStick; interface IArcadeStickStatics; interface IArcadeStickStatics2; interface IFlightStick; interface IFlightStickStatics; interface IGameController; interface IGameControllerBatteryInfo; interface IGamepad; interface IGamepad2; interface IGamepadStatics; interface IGamepadStatics2; interface IHeadset; interface IRacingWheel; interface IRacingWheelStatics; interface IRacingWheelStatics2; interface IRawGameController; interface IRawGameController2; interface IRawGameControllerStatics; interface IUINavigationController; interface IUINavigationControllerStatics; interface IUINavigationControllerStatics2; runtimeclass ArcadeStick; runtimeclass FlightStick; runtimeclass Gamepad; runtimeclass Headset; runtimeclass RacingWheel; runtimeclass RawGameController; runtimeclass UINavigationController; } } } // Generic instantiations namespace Windows { namespace Gaming { namespace Input { 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.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.EventHandler; interface Windows.Foundation.EventHandler; interface Windows.Foundation.EventHandler; interface Windows.Foundation.EventHandler; interface Windows.Foundation.EventHandler; interface Windows.Foundation.EventHandler; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Gaming { namespace Input { [contractversion(2.0)] apicontract GamingInputPreviewContract { } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum ArcadeStickButtons { None = 0x0, StickUp = 0x1, StickDown = 0x2, StickLeft = 0x4, StickRight = 0x8, Action1 = 0x10, Action2 = 0x20, Action3 = 0x40, Action4 = 0x80, Action5 = 0x100, Action6 = 0x200, Special1 = 0x400, Special2 = 0x800 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] [flags] enum FlightStickButtons { None = 0x0, FirePrimary = 0x1, FireSecondary = 0x2 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum GameControllerButtonLabel { None = 0, XboxBack = 1, XboxStart = 2, XboxMenu = 3, XboxView = 4, XboxUp = 5, XboxDown = 6, XboxLeft = 7, XboxRight = 8, XboxA = 9, XboxB = 10, XboxX = 11, XboxY = 12, XboxLeftBumper = 13, XboxLeftTrigger = 14, XboxLeftStickButton = 15, XboxRightBumper = 16, XboxRightTrigger = 17, XboxRightStickButton = 18, XboxPaddle1 = 19, XboxPaddle2 = 20, XboxPaddle3 = 21, XboxPaddle4 = 22, Mode = 23, Select = 24, Menu = 25, View = 26, Back = 27, Start = 28, Options = 29, Share = 30, Up = 31, Down = 32, Left = 33, Right = 34, LetterA = 35, LetterB = 36, LetterC = 37, LetterL = 38, LetterR = 39, LetterX = 40, LetterY = 41, LetterZ = 42, Cross = 43, Circle = 44, Square = 45, Triangle = 46, LeftBumper = 47, LeftTrigger = 48, LeftStickButton = 49, Left1 = 50, Left2 = 51, Left3 = 52, RightBumper = 53, RightTrigger = 54, RightStickButton = 55, Right1 = 56, Right2 = 57, Right3 = 58, Paddle1 = 59, Paddle2 = 60, Paddle3 = 61, Paddle4 = 62, Plus = 63, Minus = 64, DownLeftArrow = 65, DialLeft = 66, DialRight = 67, Suspension = 68 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum GameControllerSwitchKind { TwoWay = 0, FourWay = 1, EightWay = 2 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum GameControllerSwitchPosition { Center = 0, Up = 1, UpRight = 2, Right = 3, DownRight = 4, Down = 5, DownLeft = 6, Left = 7, UpLeft = 8 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [flags] enum GamepadButtons { None = 0x0, Menu = 0x1, View = 0x2, A = 0x4, B = 0x8, X = 0x10, Y = 0x20, DPadUp = 0x40, DPadDown = 0x80, DPadLeft = 0x100, DPadRight = 0x200, LeftShoulder = 0x400, RightShoulder = 0x800, LeftThumbstick = 0x1000, RightThumbstick = 0x2000, [contract(Windows.Foundation.UniversalApiContract, 3.0)] Paddle1 = 0x4000, [contract(Windows.Foundation.UniversalApiContract, 3.0)] Paddle2 = 0x8000, [contract(Windows.Foundation.UniversalApiContract, 3.0)] Paddle3 = 0x10000, [contract(Windows.Foundation.UniversalApiContract, 3.0)] Paddle4 = 0x20000 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum OptionalUINavigationButtons { None = 0x0, Context1 = 0x1, Context2 = 0x2, Context3 = 0x4, Context4 = 0x8, PageUp = 0x10, PageDown = 0x20, PageLeft = 0x40, PageRight = 0x80, ScrollUp = 0x100, ScrollDown = 0x200, ScrollLeft = 0x400, ScrollRight = 0x800 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum RacingWheelButtons { None = 0x0, PreviousGear = 0x1, NextGear = 0x2, DPadUp = 0x4, DPadDown = 0x8, DPadLeft = 0x10, DPadRight = 0x20, Button1 = 0x40, Button2 = 0x80, Button3 = 0x100, Button4 = 0x200, Button5 = 0x400, Button6 = 0x800, Button7 = 0x1000, Button8 = 0x2000, Button9 = 0x4000, Button10 = 0x8000, Button11 = 0x10000, Button12 = 0x20000, Button13 = 0x40000, Button14 = 0x80000, Button15 = 0x100000, Button16 = 0x200000 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [flags] enum RequiredUINavigationButtons { None = 0x0, Menu = 0x1, View = 0x2, Accept = 0x4, Cancel = 0x8, Up = 0x10, Down = 0x20, Left = 0x40, Right = 0x80 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct ArcadeStickReading { UINT64 Timestamp; Windows.Gaming.Input.ArcadeStickButtons Buttons; }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] struct FlightStickReading { UINT64 Timestamp; Windows.Gaming.Input.FlightStickButtons Buttons; Windows.Gaming.Input.GameControllerSwitchPosition HatSwitch; DOUBLE Roll; DOUBLE Pitch; DOUBLE Yaw; DOUBLE Throttle; }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] struct GamepadReading { UINT64 Timestamp; Windows.Gaming.Input.GamepadButtons Buttons; DOUBLE LeftTrigger; DOUBLE RightTrigger; DOUBLE LeftThumbstickX; DOUBLE LeftThumbstickY; DOUBLE RightThumbstickX; DOUBLE RightThumbstickY; }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] struct GamepadVibration { DOUBLE LeftMotor; DOUBLE RightMotor; DOUBLE LeftTrigger; DOUBLE RightTrigger; }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct RacingWheelReading { UINT64 Timestamp; Windows.Gaming.Input.RacingWheelButtons Buttons; INT32 PatternShifterGear; DOUBLE Wheel; DOUBLE Throttle; DOUBLE Brake; DOUBLE Clutch; DOUBLE Handbrake; }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] struct UINavigationReading { UINT64 Timestamp; Windows.Gaming.Input.RequiredUINavigationButtons RequiredButtons; Windows.Gaming.Input.OptionalUINavigationButtons OptionalButtons; }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.ArcadeStick)] [uuid(B14A539D-BEFB-4C81-8051-15ECF3B13036)] interface IArcadeStick : IInspectable requires Windows.Gaming.Input.IGameController { HRESULT GetButtonLabel([in] Windows.Gaming.Input.ArcadeStickButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); HRESULT GetCurrentReading([out] [retval] Windows.Gaming.Input.ArcadeStickReading* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.ArcadeStick)] [uuid(5C37B8C8-37B1-4AD8-9458-200F1A30018E)] interface IArcadeStickStatics : IInspectable { [eventadd] HRESULT ArcadeStickAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT ArcadeStickAdded([in] EventRegistrationToken token); [eventadd] HRESULT ArcadeStickRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT ArcadeStickRemoved([in] EventRegistrationToken token); [propget] HRESULT ArcadeSticks([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.ArcadeStick)] [uuid(52B5D744-BB86-445A-B59C-596F0E2A49DF)] interface IArcadeStickStatics2 : IInspectable requires Windows.Gaming.Input.IArcadeStickStatics { HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.ArcadeStick** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.FlightStick)] [uuid(B4A2C01C-B83B-4459-A1A9-97B03C33DA7C)] interface IFlightStick : IInspectable requires Windows.Gaming.Input.IGameController { [propget] HRESULT HatSwitchKind([out] [retval] Windows.Gaming.Input.GameControllerSwitchKind* value); HRESULT GetButtonLabel([in] Windows.Gaming.Input.FlightStickButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); HRESULT GetCurrentReading([out] [retval] Windows.Gaming.Input.FlightStickReading* value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.FlightStick)] [uuid(5514924A-FECC-435E-83DC-5CEC8A18A520)] interface IFlightStickStatics : IInspectable { [eventadd] HRESULT FlightStickAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT FlightStickAdded([in] EventRegistrationToken token); [eventadd] HRESULT FlightStickRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT FlightStickRemoved([in] EventRegistrationToken token); [propget] HRESULT FlightSticks([out] [retval] Windows.Foundation.Collections.IVectorView** value); HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.FlightStick** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(1BAF6522-5F64-42C5-8267-B9FE2215BFBD)] interface IGameController : IInspectable { [eventadd] HRESULT HeadsetConnected([in] Windows.Foundation.TypedEventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT HeadsetConnected([in] EventRegistrationToken token); [eventadd] HRESULT HeadsetDisconnected([in] Windows.Foundation.TypedEventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT HeadsetDisconnected([in] EventRegistrationToken token); [eventadd] HRESULT UserChanged([in] Windows.Foundation.TypedEventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT UserChanged([in] EventRegistrationToken token); [propget] HRESULT Headset([out] [retval] Windows.Gaming.Input.Headset** value); [propget] HRESULT IsWireless([out] [retval] boolean* value); [propget] HRESULT User([out] [retval] Windows.System.User** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [uuid(DCECC681-3963-4DA6-955D-553F3B6F6161)] interface IGameControllerBatteryInfo : IInspectable { HRESULT TryGetBatteryReport([out] [retval] Windows.Devices.Power.BatteryReport** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Gaming.Input.Gamepad)] [uuid(BC7BB43C-0A69-3903-9E9D-A50F86A45DE5)] interface IGamepad : IInspectable requires Windows.Gaming.Input.IGameController { [propget] HRESULT Vibration([out] [retval] Windows.Gaming.Input.GamepadVibration* value); [propput] HRESULT Vibration([in] Windows.Gaming.Input.GamepadVibration value); HRESULT GetCurrentReading([out] [retval] Windows.Gaming.Input.GamepadReading* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.Gamepad)] [uuid(3C1689BD-5915-4245-B0C0-C89FAE0308FF)] interface IGamepad2 : IInspectable requires Windows.Gaming.Input.IGamepad, Windows.Gaming.Input.IGameController { HRESULT GetButtonLabel([in] Windows.Gaming.Input.GamepadButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Gaming.Input.Gamepad)] [uuid(8BBCE529-D49C-39E9-9560-E47DDE96B7C8)] interface IGamepadStatics : IInspectable { [eventadd] HRESULT GamepadAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT GamepadAdded([in] EventRegistrationToken token); [eventadd] HRESULT GamepadRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT GamepadRemoved([in] EventRegistrationToken token); [propget] HRESULT Gamepads([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.Gamepad)] [uuid(42676DC5-0856-47C4-9213-B395504C3A3C)] interface IGamepadStatics2 : IInspectable requires Windows.Gaming.Input.IGamepadStatics { HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.Gamepad** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Gaming.Input.Headset)] [uuid(3FD156EF-6925-3FA8-9181-029C5223AE3B)] interface IHeadset : IInspectable { [propget] HRESULT CaptureDeviceId([out] [retval] HSTRING* value); [propget] HRESULT RenderDeviceId([out] [retval] HSTRING* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.RacingWheel)] [uuid(F546656F-E106-4C82-A90F-554012904B85)] interface IRacingWheel : IInspectable requires Windows.Gaming.Input.IGameController { [propget] HRESULT HasClutch([out] [retval] boolean* value); [propget] HRESULT HasHandbrake([out] [retval] boolean* value); [propget] HRESULT HasPatternShifter([out] [retval] boolean* value); [propget] HRESULT MaxPatternShifterGear([out] [retval] INT32* value); [propget] HRESULT MaxWheelAngle([out] [retval] DOUBLE* value); [propget] HRESULT WheelMotor([out] [retval] Windows.Gaming.Input.ForceFeedback.ForceFeedbackMotor** value); HRESULT GetButtonLabel([in] Windows.Gaming.Input.RacingWheelButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); HRESULT GetCurrentReading([out] [retval] Windows.Gaming.Input.RacingWheelReading* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.RacingWheel)] [uuid(3AC12CD5-581B-4936-9F94-69F1E6514C7D)] interface IRacingWheelStatics : IInspectable { [eventadd] HRESULT RacingWheelAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT RacingWheelAdded([in] EventRegistrationToken token); [eventadd] HRESULT RacingWheelRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT RacingWheelRemoved([in] EventRegistrationToken token); [propget] HRESULT RacingWheels([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.RacingWheel)] [uuid(E666BCAA-EDFD-4323-A9F6-3C384048D1ED)] interface IRacingWheelStatics2 : IInspectable requires Windows.Gaming.Input.IRacingWheelStatics { HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.RacingWheel** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.RawGameController)] [uuid(7CAD6D91-A7E1-4F71-9A78-33E9C5DFEA62)] interface IRawGameController : IInspectable requires Windows.Gaming.Input.IGameController { [propget] HRESULT AxisCount([out] [retval] INT32* value); [propget] HRESULT ButtonCount([out] [retval] INT32* value); [propget] HRESULT ForceFeedbackMotors([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT HardwareProductId([out] [retval] UINT16* value); [propget] HRESULT HardwareVendorId([out] [retval] UINT16* value); [propget] HRESULT SwitchCount([out] [retval] INT32* value); HRESULT GetButtonLabel([in] INT32 buttonIndex, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); HRESULT GetCurrentReading([in] UINT32 __buttonArraySize, [out] [size_is(__buttonArraySize)] boolean* buttonArray, [in] UINT32 __switchArraySize, [out] [size_is(__switchArraySize)] Windows.Gaming.Input.GameControllerSwitchPosition* switchArray, [in] UINT32 __axisArraySize, [out] [size_is(__axisArraySize)] DOUBLE* axisArray, [out] [retval] UINT64* timestamp); HRESULT GetSwitchKind([in] INT32 switchIndex, [out] [retval] Windows.Gaming.Input.GameControllerSwitchKind* value); } [contract(Windows.Foundation.UniversalApiContract, 5.0)] [exclusiveto(Windows.Gaming.Input.RawGameController)] [uuid(43C0C035-BB73-4756-A787-3ED6BEA617BD)] interface IRawGameController2 : IInspectable requires Windows.Gaming.Input.IRawGameController, Windows.Gaming.Input.IGameController { [propget] HRESULT SimpleHapticsControllers([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT NonRoamableId([out] [retval] HSTRING* value); [propget] HRESULT DisplayName([out] [retval] HSTRING* value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.RawGameController)] [uuid(EB8D0792-E95A-4B19-AFC7-0A59F8BF759E)] interface IRawGameControllerStatics : IInspectable { [eventadd] HRESULT RawGameControllerAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT RawGameControllerAdded([in] EventRegistrationToken token); [eventadd] HRESULT RawGameControllerRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT RawGameControllerRemoved([in] EventRegistrationToken token); [propget] HRESULT RawGameControllers([out] [retval] Windows.Foundation.Collections.IVectorView** value); HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.RawGameController** value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.UINavigationController)] [uuid(E5AEEFDD-F50E-4A55-8CDC-D33229548175)] interface IUINavigationController : IInspectable requires Windows.Gaming.Input.IGameController { HRESULT GetCurrentReading([out] [retval] Windows.Gaming.Input.UINavigationReading* value); HRESULT GetOptionalButtonLabel([in] Windows.Gaming.Input.OptionalUINavigationButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); HRESULT GetRequiredButtonLabel([in] Windows.Gaming.Input.RequiredUINavigationButtons button, [out] [retval] Windows.Gaming.Input.GameControllerButtonLabel* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Gaming.Input.UINavigationController)] [uuid(2F14930A-F6F8-4A48-8D89-94786CCA0C2E)] interface IUINavigationControllerStatics : IInspectable { [eventadd] HRESULT UINavigationControllerAdded([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT UINavigationControllerAdded([in] EventRegistrationToken token); [eventadd] HRESULT UINavigationControllerRemoved([in] Windows.Foundation.EventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT UINavigationControllerRemoved([in] EventRegistrationToken token); [propget] HRESULT UINavigationControllers([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.Gaming.Input.UINavigationController)] [uuid(E0CB28E3-B20B-4B0B-9ED4-F3D53CEC0DE4)] interface IUINavigationControllerStatics2 : IInspectable requires Windows.Gaming.Input.IUINavigationControllerStatics { HRESULT FromGameController([in] Windows.Gaming.Input.IGameController* gameController, [out] [retval] Windows.Gaming.Input.UINavigationController** value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IArcadeStickStatics, Windows.Foundation.UniversalApiContract, 3.0)] [static(Windows.Gaming.Input.IArcadeStickStatics2, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass ArcadeStick { [default] interface Windows.Gaming.Input.IArcadeStick; interface Windows.Gaming.Input.IGameController; [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo; } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IFlightStickStatics, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass FlightStick { [default] interface Windows.Gaming.Input.IFlightStick; interface Windows.Gaming.Input.IGameController; interface Windows.Gaming.Input.IGameControllerBatteryInfo; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IGamepadStatics, Windows.Foundation.UniversalApiContract, 1.0)] [static(Windows.Gaming.Input.IGamepadStatics2, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass Gamepad { [default] interface Windows.Gaming.Input.IGamepad; interface Windows.Gaming.Input.IGameController; [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.Gaming.Input.IGamepad2; [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass Headset { [default] interface Windows.Gaming.Input.IHeadset; [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IRacingWheelStatics, Windows.Foundation.UniversalApiContract, 3.0)] [static(Windows.Gaming.Input.IRacingWheelStatics2, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass RacingWheel { [default] interface Windows.Gaming.Input.IRacingWheel; interface Windows.Gaming.Input.IGameController; [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo; } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IRawGameControllerStatics, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass RawGameController { [default] interface Windows.Gaming.Input.IRawGameController; interface Windows.Gaming.Input.IGameController; interface Windows.Gaming.Input.IGameControllerBatteryInfo; [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Gaming.Input.IRawGameController2; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [static(Windows.Gaming.Input.IUINavigationControllerStatics, Windows.Foundation.UniversalApiContract, 3.0)] [static(Windows.Gaming.Input.IUINavigationControllerStatics2, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass UINavigationController { [default] interface Windows.Gaming.Input.IUINavigationController; interface Windows.Gaming.Input.IGameController; [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo; } } } }