sdlGameControllerGetAxisFromString function

int sdlGameControllerGetAxisFromString(
  1. String? str
)

Convert a string into SDL_GameControllerAxis enum.

This function is called internally to translate SDL_GameController mapping strings for the underlying joystick device into the consistent SDL_GameController mapping. You do not normally need to call this function unless you are parsing SDL_GameController mappings in your own code.

Note specially that "righttrigger" and "lefttrigger" map to SDL_CONTROLLER_AXIS_TRIGGERRIGHT and SDL_CONTROLLER_AXIS_TRIGGERLEFT, respectively.

\param str string representing a SDL_GameController axis \returns the SDL_GameControllerAxis enum corresponding to the input string, or SDL_CONTROLLER_AXIS_INVALID if no match was found.

\since This function is available since SDL 2.0.0.

\sa SDL_GameControllerGetStringForAxis

extern DECLSPEC SDL_GameControllerAxis SDLCALL SDL_GameControllerGetAxisFromString(const char *str)

Implementation

int sdlGameControllerGetAxisFromString(String? str) {
  final sdlGameControllerGetAxisFromStringLookupFunction =
      libSdl2.lookupFunction<
          Int32 Function(Pointer<Utf8> str),
          int Function(
              Pointer<Utf8> str)>('SDL_GameControllerGetAxisFromString');
  final strPointer = str != null ? str.toNativeUtf8() : nullptr;
  final result = sdlGameControllerGetAxisFromStringLookupFunction(strPointer);
  calloc.free(strPointer);
  return result;
}