Serwis Edukacyjny
Nauczycieli
w I-LO w Tarnowie

Do strony głównej I LO w Tarnowie

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

©2021 mgr Jerzy Wałaszek
I LO w Tarnowie

logo

Autor artykułu: mgr Jerzy Wałaszek

 

SDL2

Interfejs SDL2:

SDL_InitSubSystem

Rozdziały:
     Interfejs SDL2 wg nazw
     Interfejs SDL2 wg kategorii

 

Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2. Oryginał znajdziesz pod tym adresem: https://wiki.libsdl.org/CategoryAPI.

SDL_InitSubSystem

Użyj tej funkcji, aby dokonać inicjalizacji określonych podsystemów SDL.

Składnia

int SDL_InitSubSystem(Uint32 flags)

Parametry funkcji

flags dowolne znaczniki używane przez SDL_Init(); zobacz do Uwag.

Wartość zwracana

Zwraca 0 przy sukcesie lub ujemny kod błędu przy niepowodzeniu; wywołaj funkcję SDL_GetError(), aby otrzymać więcej informacji na temat błędu.

Przykładowy kod

/* Oddzielna inicjalizacja Joysticka i Wideo. */
SDL_Init(SDL_INIT_VIDEO);

SDL_Window* window = SDL_CreateWindow("A Window",
                                      SDL_WINDOWPOS_UNDEFINED,
                                      SDL_WINDOWPOS_UNDEFINED, 640, 480,
                                      SDL_WINDOW_FULLSCREEN);
SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 0);

/* Tutaj wykonaj działania związane z Wideo */

/* Inicjalizuj podsystem joysticka */
SDL_InitSubSystem(SDL_INIT_JOYSTICK);

/* Tutaj wykonaj działania związane z wideo i z joystickiem */

/* Zamknij oba podsystemy */
SDL_Quit();

Uwagi

Po inicjalizacji SDL za pomocą funkcji SDL_Init() możesz dokonać inicjalizacji podsystemów jeszcze nie zainicjalizowanych za pomocą funkcji SDL_InitSubSystem().

Oto znaczniki, które można przekazać do SDL_InitSubSystem() połączone alternatywą bitową w celu jednoczesnej inicjalizacji kilku podsystemów:

SDL_INIT_TIMER podsystem licznika czasu
SDL_Init.line-6">SDL_INIT_AUDIO podsystem dźwiękowy
SDL_Init.line-7">SDL_INIT_VIDEO podsystem wideo; automatycznie inicjalizuje podsystem zdarzeń
SDL_Init.line-8"> SDL_INIT_JOYSTICK podsystem joysticka; automatycznie inicjalizuje podsystem zdarzeń
SDL_Init.line-9">SDL_INIT_HAPTIC podsystem siłowego sprzężenia zwrotnego (haptic)
SDL_Init.line-10"> SDL_INIT_GAMECONTROLLER podsystem sterownika gier; automatycznie inicjalizuje podsystem zdarzeń
SDL_Init.line-11">SDL_INIT_EVENTS podsystem obsługi zdarzeń
SDL_Init.line-12"> SDL_INIT_EVERYTHING wszystkie powyższe systemy razem
SDL_Init.line-13"> SDL_INIT_NOPARACHUTE kompatybilność; ten znacznik jest ignorowany

SDL_Init() inicjalizuje asercje i zabezpieczenie przed awarią, po czym wywołuje funkcję SDL_InitSubSystem(). Jeśli chcesz pominąć te zabezpieczenia, możesz bezpośrednio wywołać SDL_InitSubSystem().

Inicjalizacja podsystemów jest oparta na zliczaniu odwołań, musisz wywołać SDL_QuitSubSystem() dla każdego wywołania SDL_InitSubSystem(), aby poprawnie zamknąć ręcznie jakiś podsystem (lub wywołać SDL_Quit(), aby wymusić zamknięcie wszystkich podsystemów). Jeśli dany podsystem został już załadowany, to wywołanie to jedynie zwiększy zawartość licznika odwołań i powróci.

Powiązane funkcje

 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2021 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.