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


Use this function to prepare a read-only memory buffer for use with RWops.


SDL_RWops* SDL_RWFromConstMem(const void *mem, size_t size);

Function Parameters

mem a pointer to a read-only buffer to feed an SDL_RWops stream
size the buffer size, in bytes

Return Value

Returns a pointer to a new SDL_RWops structure, or NULL if it fails; call SDL_GetError() for more information.


This function sets up an SDL_RWops struct based on a memory area of a certain size. It assumes the memory area is not writable.

Attempting to write to this RWops stream will report an error without writing to the memory buffer.

This memory buffer is not copied by the RWops; the pointer you provide must remain valid until you close the stream. Closing the stream will not free the original buffer.

If you need to write to a memory buffer, you should use SDL_RWFromMem() with a writable buffer of memory instead.


This function is available since SDL 3.0.0.

Code Examples

char bitmap[] = {
    66, 77, 86, 2, 0, 0, 0, 0 ...
SDL_RWops *rw = SDL_RWFromConstMem(bitmap, sizeof(bitmap));
SDL_Surface *img = SDL_LoadBMP_RW(rw, 1); /* Automatically frees the RWops struct for us */
/* Do something with img... */

CategoryAPI, CategoryIO

[ 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.