# WARNING: Please don't edit this file. It was generated by Python/WinRT v1.0.0-beta.10

import enum

import winsdk.system

_ns_module = winsdk.system._import_ns_module("Windows.Gaming.Input.ForceFeedback")

try:
    import winsdk.windows.foundation
except ImportError:
    pass

try:
    import winsdk.windows.foundation.numerics
except ImportError:
    pass

class ConditionForceEffectKind(enum.IntEnum):
    SPRING = 0
    DAMPER = 1
    INERTIA = 2
    FRICTION = 3

class ForceFeedbackEffectAxes(enum.IntFlag):
    NONE = 0
    X = 0x1
    Y = 0x2
    Z = 0x4

class ForceFeedbackEffectState(enum.IntEnum):
    STOPPED = 0
    RUNNING = 1
    PAUSED = 2
    FAULTED = 3

class ForceFeedbackLoadEffectResult(enum.IntEnum):
    SUCCEEDED = 0
    EFFECT_STORAGE_FULL = 1
    EFFECT_NOT_SUPPORTED = 2

class PeriodicForceEffectKind(enum.IntEnum):
    SQUARE_WAVE = 0
    SINE_WAVE = 1
    TRIANGLE_WAVE = 2
    SAWTOOTH_WAVE_UP = 3
    SAWTOOTH_WAVE_DOWN = 4

_ns_module._register_ConditionForceEffectKind(ConditionForceEffectKind)
_ns_module._register_ForceFeedbackEffectAxes(ForceFeedbackEffectAxes)
_ns_module._register_ForceFeedbackEffectState(ForceFeedbackEffectState)
_ns_module._register_ForceFeedbackLoadEffectResult(ForceFeedbackLoadEffectResult)
_ns_module._register_PeriodicForceEffectKind(PeriodicForceEffectKind)

ConditionForceEffect = _ns_module.ConditionForceEffect
ConstantForceEffect = _ns_module.ConstantForceEffect
ForceFeedbackMotor = _ns_module.ForceFeedbackMotor
PeriodicForceEffect = _ns_module.PeriodicForceEffect
RampForceEffect = _ns_module.RampForceEffect
IForceFeedbackEffect = _ns_module.IForceFeedbackEffect
