SDL Wiki
(This is the documentation for SDL3, which is under heavy development and the API is changing! SDL2 is the current stable version!)


THIS PAGE IS A WORK IN PROGRESS ... Please make edits to this page to improve it!


Load a set of Game Controller mappings from a seekable SDL data stream.


int SDL_GameControllerAddMappingsFromRW(SDL_RWops * rw, int freerw);

Function Parameters


the data stream for the mappings to be added


non-zero to close the stream after being read

Return Value

Returns the number of mappings added or -1 on error; call SDL_GetError() for more information.


You can call this function several times, if needed, to load different database files.

If a new mapping is loaded for an already known controller GUID, the later version will overwrite the one currently loaded.

Mappings not belonging to the current platform or with no platform field specified will be ignored (i.e. mappings for Linux will be ignored in Windows, etc).

This function will load the text database entirely in memory before processing it, so take this into consideration if you are in a memory constrained environment.


This function is available since SDL 3.0.0.

Code Examples

SDL_GameControllerAddMappingsFromRW(SDL_RWFromFile("gamecontrollerdb.txt", "rb"), 1);

CategoryAPI, CategoryGameController, CategoryDraft

[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.