Signed-off-by: Rémi Bernon rbernon@codeweavers.com --- .../windows.gaming.input.forcefeedback.idl | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+)
diff --git a/include/windows.gaming.input.forcefeedback.idl b/include/windows.gaming.input.forcefeedback.idl index 39705918b6e..432b60a5592 100644 --- a/include/windows.gaming.input.forcefeedback.idl +++ b/include/windows.gaming.input.forcefeedback.idl @@ -28,6 +28,7 @@ import "windows.foundation.idl";
namespace Windows.Gaming.Input.ForceFeedback { typedef enum ForceFeedbackEffectAxes ForceFeedbackEffectAxes; + typedef enum ForceFeedbackEffectState ForceFeedbackEffectState; typedef enum ForceFeedbackLoadEffectResult ForceFeedbackLoadEffectResult; interface IForceFeedbackEffect; runtimeclass ForceFeedbackMotor; @@ -50,6 +51,15 @@ namespace Windows.Gaming.Input.ForceFeedback { Z = 0x4 };
+ [contract(Windows.Foundation.UniversalApiContract, 3.0)] + enum ForceFeedbackEffectState + { + Stopped = 0, + Running = 1, + Paused = 2, + Faulted = 3, + }; + [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum ForceFeedbackLoadEffectResult { @@ -58,6 +68,19 @@ namespace Windows.Gaming.Input.ForceFeedback { EffectNotSupported = 2 };
+ [ + contract(Windows.Foundation.UniversalApiContract, 3.0), + uuid(a17fba0c-2ae4-48c2-8063-eabd0777cb89) + ] + interface IForceFeedbackEffect : IInspectable + { + [propget] HRESULT Gain([out, retval] DOUBLE *value); + [propput] HRESULT Gain([in] DOUBLE value); + [propget] HRESULT State([out, retval] Windows.Gaming.Input.ForceFeedback.ForceFeedbackEffectState *value); + HRESULT Start(); + HRESULT Stop(); + } + [ contract(Windows.Foundation.UniversalApiContract, 3.0), exclusiveto(Windows.Gaming.Input.ForceFeedback.ForceFeedbackMotor),