目次 - API(機能別) - ファイル入出力 - SDL_RWFromConstMem

SDL_RWFromConstMem

SDL_RWopsで使う読込専用メモリバッファを準備する

構文

SDL_RWops* SDL_RWFromConstMem(const void* mem, int size)

引数

memSDL_RWopsに設定する読込専用バッファへのポインタ
sizeバッファのバイト数

戻り値

新しいSDL_RWopsへのポインタを戻す. 失敗のときNULLを戻す. SDL_GetError()で詳細を知ることができる.

サンプルコード

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); /* 自動的にSDL_RWopsを解放する */
/* ここでimgを処理する */

詳細

この関数はサイズの決まったメモリをSDL_RWopsに設定する. メモリには書き込めないとみなされる.

このSDL_RWopsに書き込もうとすると, メモリには書き込めずエラーが報告される.

メモリバッファはコピーされない. メモリバッファへのポインタはストリームが閉じられるまで使用可能である必要がある. ストリームを閉じても元のバッファは解放されない.

メモリバッファに書き込みたいならば, 代わりにSDL_RWFromMem()を使って書込可能メモリバッファにする必要がある.

関連項目(関数)

SDL_RWclose
SDL_RWFromFile
SDL_RWFromFP
SDL_RWFromMem
SDL_RWread
SDL_RWseek
SDL_RWtell

SDL Wikiへのリンク

SDL_RWFromConstMem - SDL Wiki