目次 - API(機能別) - ゲームコントローラー - SDL_GameControllerGetStringForAxis

SDL_GameControllerGetStringForAxis

ゲームコントローラーの軸番号を文字列に変換する

構文

const char* SDL_GameControllerGetStringForAxis(SDL_GameControllerAxis axis)

引数

axisSDL_GameControllerAxisの値

戻り値

指定の軸番号の文字列を戻す. 軸番号が範囲外のときはNULLを戻す. 文字列はSDL_GameControllerマッピング文字列の形式である.

詳細

戻された文字列をSDL_free()で解放しようとしてはならない.

サンプルコード

#include "SDL.h"

int main(int argc, char* argv[])
{
    SDL_Event event;
    SDL_bool running = SDL_TRUE;

    if (SDL_Init(SDL_INIT_GAMECONTROLLER) < 0) {
        SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "SDL2初期化エラー : %s\n", SDL_GetError());
        return 1;
    }

    while (running) {
        while (SDL_PollEvent(&event) > 0) {
            if (event.type == SDL_QUIT) {
                running = SDL_FALSE;
            }

            if (event.type == SDL_CONTROLLERAXISMOTION) {
                const char *axisName = SDL_GameControllerGetStringForAxis((SDL_GameControllerAxis)event.caxis.axis);
                int axisValue = event.caxis.value;
                SDL_Log("使用軸 : %s\t軸の値 : %d\n", axisName, axisValue);
            }
        }
    }

    SDL_Quit();

    return 0;
}

バージョン

SDL 2.0.0以降

関連項目(関数)

SDL_GameControllerGetAxisFromString

SDL Wikiへのリンク

SDL_GameControllerGetStringForAxis - SDL Wiki