sdlRunHapticEffect function haptic

bool sdlRunHapticEffect(
  1. Pointer<SdlHaptic> haptic,
  2. int effect,
  3. int iterations
)

Run the haptic effect on its associated haptic device.

To repeat the effect over and over indefinitely, set iterations to SDL_HAPTIC_INFINITY. (Repeats the envelope - attack and fade.) To make one instance of the effect last indefinitely (so the effect does not fade), set the effect's length in its structure/union to SDL_HAPTIC_INFINITY instead.

\param haptic the SDL_Haptic device to run the effect on. \param effect the ID of the haptic effect to run. \param iterations the number of iterations to run the effect; use SDL_HAPTIC_INFINITY to repeat forever. \returns true on success or false on failure; call SDL_GetError() for more information.

\since This function is available since SDL 3.2.0.

\sa SDL_GetHapticEffectStatus \sa SDL_StopHapticEffect \sa SDL_StopHapticEffects

extern SDL_DECLSPEC bool SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, SDL_HapticEffectID effect, Uint32 iterations)

Implementation

bool sdlRunHapticEffect(Pointer<SdlHaptic> haptic, int effect, int iterations) {
  final sdlRunHapticEffectLookupFunction = _libSdl
      .lookupFunction<
        Uint8 Function(
          Pointer<SdlHaptic> haptic,
          Int32 effect,
          Uint32 iterations,
        ),
        int Function(Pointer<SdlHaptic> haptic, int effect, int iterations)
      >('SDL_RunHapticEffect');
  return sdlRunHapticEffectLookupFunction(haptic, effect, iterations) == 1;
}