2 * Copyright 2021 RĂ©mi Bernon for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #pragma winrt ns_prefix
24 import
"inspectable.idl";
25 import
"asyncinfo.idl";
26 import
"eventtoken.idl";
27 import
"windowscontracts.idl";
28 import
"windows.foundation.idl";
29 import
"windows.devices.haptics.idl";
30 import
"windows.gaming.input.forcefeedback.idl";
31 import
"windows.system.idl";
32 import
"windows.devices.power.idl";
35 namespace Windows.Gaming.Input
{
36 typedef enum ArcadeStickButtons ArcadeStickButtons
;
37 typedef enum FlightStickButtons FlightStickButtons
;
38 typedef enum GamepadButtons GamepadButtons
;
39 typedef enum GameControllerButtonLabel GameControllerButtonLabel
;
40 typedef enum GameControllerSwitchKind GameControllerSwitchKind
;
41 typedef enum GameControllerSwitchPosition GameControllerSwitchPosition
;
42 typedef enum RacingWheelButtons RacingWheelButtons
;
43 typedef struct ArcadeStickReading ArcadeStickReading
;
44 typedef struct FlightStickReading FlightStickReading
;
45 typedef struct GamepadReading GamepadReading
;
46 typedef struct GamepadVibration GamepadVibration
;
47 typedef struct RacingWheelReading RacingWheelReading
;
48 interface IArcadeStick
;
49 interface IArcadeStickStatics
;
50 interface IArcadeStickStatics2
;
51 interface IFlightStick
;
52 interface IFlightStickStatics
;
53 interface IGameController
;
54 interface IGameControllerBatteryInfo
;
57 interface IGamepadStatics
;
58 interface IGamepadStatics2
;
59 interface IRacingWheel
;
60 interface IRacingWheelStatics
;
61 interface IRacingWheelStatics2
;
62 interface IRawGameController
;
63 interface IRawGameController2
;
64 runtimeclass ArcadeStick
;
65 runtimeclass FlightStick
;
68 runtimeclass RacingWheel
;
69 runtimeclass RawGameController
;
72 interface Windows.Foundation.EventHandler
<Windows.Gaming.Input.ArcadeStick
*>;
73 interface Windows.Foundation.EventHandler
<Windows.Gaming.Input.FlightStick
*>;
74 interface Windows.Foundation.EventHandler
<Windows.Gaming.Input.Gamepad
*>;
75 interface Windows.Foundation.EventHandler
<Windows.Gaming.Input.RacingWheel
*>;
76 interface Windows.Foundation.EventHandler
<Windows.Gaming.Input.RawGameController
*>;
77 interface Windows.Foundation.TypedEventHandler
<Windows.Gaming.Input.IGameController
*, Windows.Gaming.Input.Headset
*>;
78 interface Windows.Foundation.TypedEventHandler
<Windows.Gaming.Input.IGameController
*, Windows.System.UserChangedEventArgs
*>;
79 interface Windows.Foundation.Collections.IIterator
<Windows.Gaming.Input.ArcadeStick
*>;
80 interface Windows.Foundation.Collections.IIterable
<Windows.Gaming.Input.ArcadeStick
*>;
81 interface Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.ArcadeStick
*>;
82 interface Windows.Foundation.Collections.IIterator
<Windows.Gaming.Input.FlightStick
*>;
83 interface Windows.Foundation.Collections.IIterable
<Windows.Gaming.Input.FlightStick
*>;
84 interface Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.FlightStick
*>;
85 interface Windows.Foundation.Collections.IIterator
<Windows.Gaming.Input.Gamepad
*>;
86 interface Windows.Foundation.Collections.IIterable
<Windows.Gaming.Input.Gamepad
*>;
87 interface Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.Gamepad
*>;
88 interface Windows.Foundation.Collections.IVector
<Windows.Gaming.Input.Gamepad
*>;
89 interface Windows.Foundation.Collections.IIterator
<Windows.Gaming.Input.RacingWheel
*>;
90 interface Windows.Foundation.Collections.IIterable
<Windows.Gaming.Input.RacingWheel
*>;
91 interface Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.RacingWheel
*>;
92 interface Windows.Foundation.Collections.IVector
<Windows.Gaming.Input.RacingWheel
*>;
93 interface Windows.Foundation.Collections.IIterator
<Windows.Gaming.Input.RawGameController
*>;
94 interface Windows.Foundation.Collections.IIterable
<Windows.Gaming.Input.RawGameController
*>;
95 interface Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.RawGameController
*>;
96 interface Windows.Foundation.Collections.IVector
<Windows.Gaming.Input.RawGameController
*>;
100 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
103 enum ArcadeStickButtons
121 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
124 enum FlightStickButtons
132 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
148 LeftShoulder
= 0x400,
149 RightShoulder
= 0x800,
150 LeftThumbstick
= 0x1000,
151 RightThumbstick
= 0x2000,
152 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
154 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
156 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
158 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
162 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
163 enum GameControllerButtonLabel
179 XboxLeftTrigger
= 14,
180 XboxLeftStickButton
= 15,
181 XboxRightBumper
= 16,
182 XboxRightTrigger
= 17,
183 XboxRightStickButton
= 18,
214 LeftStickButton
= 49,
220 RightStickButton
= 55,
236 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)]
237 enum GameControllerSwitchKind
244 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)]
245 enum GameControllerSwitchPosition
259 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
262 enum RacingWheelButtons
289 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
290 struct ArcadeStickReading
293 Windows.Gaming.Input.ArcadeStickButtons Buttons
;
296 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)]
297 struct FlightStickReading
300 Windows.Gaming.Input.FlightStickButtons Buttons
;
301 Windows.Gaming.Input.GameControllerSwitchPosition HatSwitch
;
308 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
309 struct GamepadReading
312 Windows.Gaming.Input.GamepadButtons Buttons
;
315 DOUBLE LeftThumbstickX
;
316 DOUBLE LeftThumbstickY
;
317 DOUBLE RightThumbstickX
;
318 DOUBLE RightThumbstickY
;
321 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
322 struct GamepadVibration
330 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)]
331 struct RacingWheelReading
334 Windows.Gaming.Input.RacingWheelButtons Buttons
;
335 INT32 PatternShifterGear
;
344 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
345 exclusiveto
(Windows.Gaming.Input.ArcadeStick
),
346 uuid(b14a539d
-befb
-4c81
-8051-15ecf3b13036
)
348 interface IArcadeStick
: IInspectable
349 requires Windows.Gaming.Input.IGameController
351 HRESULT GetButtonLabel
([in] Windows.Gaming.Input.ArcadeStickButtons button
,
352 [out, retval] Windows.Gaming.Input.GameControllerButtonLabel
*value
);
353 HRESULT GetCurrentReading
([out, retval] Windows.Gaming.Input.ArcadeStickReading
*value
);
357 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
358 exclusiveto
(Windows.Gaming.Input.ArcadeStick
),
359 uuid(5c37b8c8
-37b1
-4ad8
-9458-200f1a30018e
)
361 interface IArcadeStickStatics
: IInspectable
363 [eventadd
] HRESULT ArcadeStickAdded
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.ArcadeStick
*> *value
,
364 [out, retval] EventRegistrationToken
*token
);
365 [eventremove
] HRESULT ArcadeStickAdded
([in] EventRegistrationToken token
);
366 [eventadd
] HRESULT ArcadeStickRemoved
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.ArcadeStick
*> *value
,
367 [out, retval] EventRegistrationToken
*token
);
368 [eventremove
] HRESULT ArcadeStickRemoved
([in] EventRegistrationToken token
);
369 [propget] HRESULT ArcadeSticks
([out, retval] Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.ArcadeStick
*> **value
);
373 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
374 exclusiveto
(Windows.Gaming.Input.ArcadeStick
),
375 uuid(52b5d744
-bb86
-445a
-b59c
-596f0e2a49df
)
377 interface IArcadeStickStatics2
: IInspectable
378 requires Windows.Gaming.Input.IArcadeStickStatics
380 HRESULT FromGameController
([in] Windows.Gaming.Input.IGameController
*controller
,
381 [out, retval] Windows.Gaming.Input.ArcadeStick
**value
);
385 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
386 exclusiveto
(Windows.Gaming.Input.FlightStick
),
387 uuid(b4a2c01c
-b83b
-4459-a1a9
-97b03c33da7c
)
389 interface IFlightStick
: IInspectable
390 requires Windows.Gaming.Input.IGameController
392 [propget] HRESULT HatSwitchKind
([out, retval] Windows.Gaming.Input.GameControllerSwitchKind
*value
);
393 HRESULT GetButtonLabel
([in] Windows.Gaming.Input.FlightStickButtons button
,
394 [out, retval] Windows.Gaming.Input.GameControllerButtonLabel
*value
);
395 HRESULT GetCurrentReading
([out, retval] Windows.Gaming.Input.FlightStickReading
*value
);
399 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
400 exclusiveto
(Windows.Gaming.Input.FlightStick
),
401 uuid(5514924a
-fecc
-435e-83dc
-5cec8a18a520
)
403 interface IFlightStickStatics
: IInspectable
405 [eventadd
] HRESULT FlightStickAdded
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.FlightStick
*> *value
,
406 [out, retval] EventRegistrationToken
*token
);
407 [eventremove
] HRESULT FlightStickAdded
([in] EventRegistrationToken token
);
408 [eventadd
] HRESULT FlightStickRemoved
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.FlightStick
*> *value
,
409 [out, retval] EventRegistrationToken
*token
);
410 [eventremove
] HRESULT FlightStickRemoved
([in] EventRegistrationToken token
);
411 [propget] HRESULT FlightSticks
([out, retval] Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.FlightStick
*> **value
);
412 HRESULT FromGameController
([in] Windows.Gaming.Input.IGameController
*controller
,
413 [out, retval] Windows.Gaming.Input.FlightStick
**value
);
417 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
418 uuid(1baf6522
-5f64
-42c5
-8267-b9fe2215bfbd
)
420 interface IGameController
: IInspectable
422 [eventadd
] HRESULT HeadsetConnected
([in] Windows.Foundation.TypedEventHandler
<Windows.Gaming.Input.IGameController
*, Windows.Gaming.Input.Headset
*> *handler
,
423 [out, retval] EventRegistrationToken
*token
);
424 [eventremove
] HRESULT HeadsetConnected
([in] EventRegistrationToken token
);
425 [eventadd
] HRESULT HeadsetDisconnected
([in] Windows.Foundation.TypedEventHandler
<Windows.Gaming.Input.IGameController
*, Windows.Gaming.Input.Headset
*> *handler
,
426 [out, retval] EventRegistrationToken
*token
);
427 [eventremove
] HRESULT HeadsetDisconnected
([in] EventRegistrationToken token
);
428 [eventadd
] HRESULT UserChanged
([in] Windows.Foundation.TypedEventHandler
<Windows.Gaming.Input.IGameController
*, Windows.System.UserChangedEventArgs
*> *handler
,
429 [out, retval] EventRegistrationToken
*token
);
430 [eventremove
] HRESULT UserChanged
([in] EventRegistrationToken token
);
431 [propget] HRESULT Headset
([out, retval] Windows.Gaming.Input.Headset
**value
);
432 [propget] HRESULT IsWireless
([out, retval] boolean *value
);
433 [propget] HRESULT User
([out, retval] Windows.System.User
**value
);
437 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
438 exclusiveto
(Windows.Gaming.Input.Gamepad
),
439 uuid(bc7bb43c
-0a69
-3903-9e9d
-a50f86a45de5
)
441 interface IGamepad
: IInspectable
442 requires Windows.Gaming.Input.IGameController
444 [propget] HRESULT Vibration
([out, retval] Windows.Gaming.Input.GamepadVibration
*value
);
445 [propput] HRESULT Vibration
([in] Windows.Gaming.Input.GamepadVibration value
);
446 HRESULT GetCurrentReading
([out, retval] Windows.Gaming.Input.GamepadReading
*value
);
450 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
451 exclusiveto
(Windows.Gaming.Input.Gamepad
),
452 uuid(3c1689bd
-5915-4245-b0c0
-c89fae0308ff
)
454 interface IGamepad2
: IInspectable
455 requires Windows.Gaming.Input.IGamepad
,
456 Windows.Gaming.Input.IGameController
458 HRESULT GetButtonLabel
([in] Windows.Gaming.Input.GamepadButtons button
,
459 [out, retval] Windows.Gaming.Input.GameControllerButtonLabel
*value
);
463 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
464 exclusiveto
(Windows.Gaming.Input.RacingWheel
),
465 uuid(f546656f
-e106
-4c82
-a90f
-554012904b85
)
467 interface IRacingWheel
: IInspectable
468 requires Windows.Gaming.Input.IGameController
470 [propget] HRESULT HasClutch
([out, retval] boolean *value
);
471 [propget] HRESULT HasHandbrake
([out, retval] boolean *value
);
472 [propget] HRESULT HasPatternShifter
([out, retval] boolean *value
);
473 [propget] HRESULT MaxPatternShifterGear
([out, retval] INT32
*value
);
474 [propget] HRESULT MaxWheelAngle
([out, retval] DOUBLE *value
);
475 [propget] HRESULT WheelMotor
([out, retval] Windows.Gaming.Input.ForceFeedback.ForceFeedbackMotor
**value
);
476 HRESULT GetButtonLabel
([in] Windows.Gaming.Input.RacingWheelButtons button
, [out, retval] Windows.Gaming.Input.GameControllerButtonLabel
*value
);
477 HRESULT GetCurrentReading
([out, retval] Windows.Gaming.Input.RacingWheelReading
*value
);
481 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
482 exclusiveto
(Windows.Gaming.Input.RacingWheel
),
483 uuid(3ac12cd5
-581b
-4936-9f94
-69f1e6514c7d
)
485 interface IRacingWheelStatics
: IInspectable
487 [eventadd
] HRESULT RacingWheelAdded
([in] Windows.Foundation.EventHandler
<RacingWheel
*> *value
, [out, retval] EventRegistrationToken
*token
);
488 [eventremove
] HRESULT RacingWheelAdded
([in] EventRegistrationToken token
);
489 [eventadd
] HRESULT RacingWheelRemoved
([in] Windows.Foundation.EventHandler
<RacingWheel
*> *value
, [out, retval] EventRegistrationToken
*token
);
490 [eventremove
] HRESULT RacingWheelRemoved
([in] EventRegistrationToken token
);
491 [propget] HRESULT RacingWheels
([out, retval] Windows.Foundation.Collections.IVectorView
<RacingWheel
*> **value
);
495 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
496 exclusiveto
(Windows.Gaming.Input.RacingWheel
),
497 uuid(e666bcaa
-edfd
-4323-a9f6
-3c384048d1ed
)
499 interface IRacingWheelStatics2
: IInspectable
500 requires Windows.Gaming.Input.IRacingWheelStatics
502 HRESULT FromGameController
([in] Windows.Gaming.Input.IGameController
*controller
,
503 [out, retval] Windows.Gaming.Input.RacingWheel
**value
);
507 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
508 exclusiveto
(Windows.Gaming.Input.RawGameController
),
509 uuid(7cad6d91
-a7e1
-4f71
-9a78
-33e9c5dfea62
)
511 interface IRawGameController
: IInspectable
512 requires Windows.Gaming.Input.IGameController
514 [propget] HRESULT AxisCount
([out, retval] INT32
*value
);
515 [propget] HRESULT ButtonCount
([out, retval] INT32
*value
);
516 [propget] HRESULT ForceFeedbackMotors
([out, retval] Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.ForceFeedback.ForceFeedbackMotor
*> **value
);
517 [propget] HRESULT HardwareProductId
([out, retval] UINT16
*value
);
518 [propget] HRESULT HardwareVendorId
([out, retval] UINT16
*value
);
519 [propget] HRESULT SwitchCount
([out, retval] INT32
*value
);
520 HRESULT GetButtonLabel
([in] INT32 index
, [out, retval] Windows.Gaming.Input.GameControllerButtonLabel
*value
);
521 HRESULT GetCurrentReading
([in] UINT32 buttons_size
, [out, size_is(buttons_size
)] boolean *buttons
,
522 [in] UINT32 switches_size
, [out, size_is(switches_size
)] Windows.Gaming.Input.GameControllerSwitchPosition
*switches
,
523 [in] UINT32 axes_size
, [out, size_is(axes_size
)] DOUBLE *axes
,
524 [out, retval] UINT64
*timestamp
);
525 HRESULT GetSwitchKind
([in] INT32 index
, [out, retval] Windows.Gaming.Input.GameControllerSwitchKind
*value
);
529 contract
(Windows.Foundation.UniversalApiContract
, 5.0),
530 exclusiveto
(Windows.Gaming.Input.RawGameController
),
531 uuid(43c0c035
-bb73
-4756-a787
-3ed6bea617bd
)
533 interface IRawGameController2
: IInspectable
534 requires Windows.Gaming.Input.IRawGameController
,
535 Windows.Gaming.Input.IGameController
537 [propget] HRESULT SimpleHapticsControllers
([out, retval] Windows.Foundation.Collections.IVectorView
<Windows.Devices.Haptics.SimpleHapticsController
*> **value
);
538 [propget] HRESULT NonRoamableId
([out, retval] HSTRING
*value
);
539 [propget] HRESULT DisplayName
([out, retval] HSTRING
*value
);
544 uuid(8bbce529
-d49c
-39e9
-9560-e47dde96b7c8
)
546 interface IGamepadStatics
: IInspectable
548 [eventadd
] HRESULT GamepadAdded
([in] Windows.Foundation.EventHandler
<Gamepad
*> *value
, [out, retval] EventRegistrationToken
*token
);
549 [eventremove
] HRESULT GamepadAdded
([in] EventRegistrationToken token
);
550 [eventadd
] HRESULT GamepadRemoved
([in] Windows.Foundation.EventHandler
<Gamepad
*> *value
, [out, retval] EventRegistrationToken
*token
);
551 [eventremove
] HRESULT GamepadRemoved
([in] EventRegistrationToken token
);
552 [propget] HRESULT Gamepads
([out, retval] Windows.Foundation.Collections.IVectorView
<Gamepad
*> **value
);
556 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
557 exclusiveto
(Windows.Gaming.Input.Gamepad
),
558 uuid(42676dc5
-0856-47c4
-9213-b395504c3a3c
)
560 interface IGamepadStatics2
: IInspectable
561 requires Windows.Gaming.Input.IGamepadStatics
563 HRESULT FromGameController
([in] Windows.Gaming.Input.IGameController
*controller
,
564 [out, retval] Windows.Gaming.Input.Gamepad
**value
);
568 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
569 exclusiveto
(Windows.Gaming.Input.Headset
),
570 uuid(3fd156ef
-6925-3fa8
-9181-029c5223ae3b
)
572 interface IHeadset
: IInspectable
574 [propget] HRESULT CaptureDeviceId
([out, retval] HSTRING
*value
);
575 [propget] HRESULT RenderDeviceId
([out, retval] HSTRING
*value
);
580 uuid(eb8d0792
-e95a
-4b19
-afc7
-0a59f8bf759e
)
582 interface IRawGameControllerStatics
: IInspectable
584 [eventadd
] HRESULT RawGameControllerAdded
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.RawGameController
*> *handler
,
585 [out, retval] EventRegistrationToken
*token
);
586 [eventremove
] HRESULT RawGameControllerAdded
([in] EventRegistrationToken token
);
587 [eventadd
] HRESULT RawGameControllerRemoved
([in] Windows.Foundation.EventHandler
<Windows.Gaming.Input.RawGameController
*> *handler
,
588 [out, retval] EventRegistrationToken
*token
);
589 [eventremove
] HRESULT RawGameControllerRemoved
([in] EventRegistrationToken token
);
590 [propget] HRESULT RawGameControllers
([out, retval] Windows.Foundation.Collections.IVectorView
<Windows.Gaming.Input.RawGameController
*> **value
);
591 HRESULT FromGameController
([in] Windows.Gaming.Input.IGameController
*game_controller
, [out, retval] Windows.Gaming.Input.RawGameController
**value
);
595 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
596 uuid(dcecc681
-3963-4da6
-955d
-553f3b6f6161
)
598 interface IGameControllerBatteryInfo
: IInspectable
600 HRESULT TryGetBatteryReport
([out, retval] Windows.Devices.Power.BatteryReport
**value
);
604 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
605 marshaling_behavior
(agile
),
606 static
(Windows.Gaming.Input.IArcadeStickStatics
, Windows.Foundation.UniversalApiContract
, 3.0),
607 static
(Windows.Gaming.Input.IArcadeStickStatics2
, Windows.Foundation.UniversalApiContract
, 4.0),
610 runtimeclass ArcadeStick
612 [default] interface Windows.Gaming.Input.IArcadeStick
;
613 interface Windows.Gaming.Input.IGameController
;
614 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
618 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
619 marshaling_behavior
(agile
),
620 static
(Windows.Gaming.Input.IFlightStickStatics
, Windows.Foundation.UniversalApiContract
, 4.0),
623 runtimeclass FlightStick
625 [default] interface Windows.Gaming.Input.IFlightStick
;
626 interface Windows.Gaming.Input.IGameController
;
627 interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
631 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
632 marshaling_behavior
(agile
),
633 static
(Windows.Gaming.Input.IGamepadStatics
, Windows.Foundation.UniversalApiContract
, 1.0),
634 static
(Windows.Gaming.Input.IGamepadStatics2
, Windows.Foundation.UniversalApiContract
, 4.0),
639 [default] interface Windows.Gaming.Input.IGamepad
;
640 interface Windows.Gaming.Input.IGameController
;
641 [contract
(Windows.Foundation.UniversalApiContract
, 3.0)] interface Windows.Gaming.Input.IGamepad2
;
642 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
646 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
647 marshaling_behavior
(agile
),
652 [default] interface Windows.Gaming.Input.IHeadset
;
653 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
657 contract
(Windows.Foundation.UniversalApiContract
, 3.0),
658 marshaling_behavior
(agile
),
659 static
(Windows.Gaming.Input.IRacingWheelStatics
, Windows.Foundation.UniversalApiContract
, 3.0),
660 static
(Windows.Gaming.Input.IRacingWheelStatics2
, Windows.Foundation.UniversalApiContract
, 4.0),
663 runtimeclass RacingWheel
665 [default] interface Windows.Gaming.Input.IRacingWheel
;
666 interface Windows.Gaming.Input.IGameController
;
667 [contract
(Windows.Foundation.UniversalApiContract
, 4.0)] interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
671 contract
(Windows.Foundation.UniversalApiContract
, 4.0),
672 marshaling_behavior
(agile
),
673 static
(Windows.Gaming.Input.IRawGameControllerStatics
, Windows.Foundation.UniversalApiContract
, 4.0),
676 runtimeclass RawGameController
678 [default] interface Windows.Gaming.Input.IRawGameController
;
679 interface Windows.Gaming.Input.IGameController
;
680 interface Windows.Gaming.Input.IGameControllerBatteryInfo
;
681 [contract
(Windows.Foundation.UniversalApiContract
, 5.0)] interface Windows.Gaming.Input.IRawGameController2
;