目次 - SDL 3.0 API(機能別) - 標準ライブラリ - SDL_INIT_INTERFACE

SDL_INIT_INTERFACE

SDLインターフェースを初期化するマクロ

ヘッダ

SDL3/SDL_stdinc.h

構文

#define SDL_INIT_INTERFACE(iface)               \
    do {                                        \
        SDL_zerop(iface);                       \
        (iface)->version = sizeof(*(iface));    \
    } while (0)

詳細

このマクロはSDLインターフェース構造体を初期化する. そして, アプリケーションはフィールドに書き込む前にこのマクロを呼ぶ必要がある.

次のように使用する:

SDL_IOStreamInterface iface;

SDL_INIT_INTERFACE(&iface);

// アプリケーションでインターフェース関数ポインタを設定する
iface.seek = ...

stream = SDL_OpenIO(&iface, NULL);

指示付き初期化を使用するならば, versionをインターフェースのサイズで初期化すること. 例えば

SDL_IOStreamInterface iface = {
    .version = sizeof(iface),
    .seek = ...
};
stream = SDL_OpenIO(&iface, NULL);

スレッドセーフ

この関数はどのスレッドからも安全に呼べる.

バージョン

SDL 3.2.0以降

関連項目

SDL Wikiへのリンク

SDL_INIT_INTERFACE - SDL Wiki