Fonctions haut-niveau de GL4Dummies pour la gestion des fenêtres avec SDL2.
Plus de détails...
#include "gl4du.h"
#include <SDL.h>
#include <SDL_opengl.h>
Aller au code source de ce fichier.
|
GL4DAPI void GL4DAPIENTRY | gl4duwSetGLAttributes (int glMajorVersion, int glMinorVersion, int glProfileMask, int glDoubleBuffer, int glDepthSize) |
| modifie les paramètre par défaut du contexte OpenGL. Plus de détails...
|
|
GL4DAPI GLboolean GL4DAPIENTRY | gl4duwCreateWindow (int argc, char **argv, const char *title, int x, int y, int width, int height, Uint32 wflags) |
| créé une fenêtre SDL avec un contexte OpenGL. Plus de détails...
|
|
GL4DAPI SDL_Window *GL4DAPIENTRY | gl4duwGetSDL_Window (void) |
| retourne le pointeur vers la structure SDL_Window de la fenêtre courante (suite à un gl4duwCreateWindow ou gl4duwBindWindow ...). Plus de détails...
|
|
GL4DAPI GLboolean GL4DAPIENTRY | gl4duwBindWindow (const char *title) |
| recherche et positionne "courant" une fenêtre en fonction de son titre. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwGetWindowSize (int *w, int *h) |
| récupère la largeur et la hauteur de la fenêtre courante. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwMainLoop (void) |
| boucle principale événement/simulation/affichage Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwResizeFunc (void(*func)(int width, int height)) |
| affecte la fonction appelée lors du resize. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwKeyDownFunc (void(*func)(int keycode)) |
| affecte la fonction appelée lors de l'événement key down. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwKeyUpFunc (void(*func)(int keycode)) |
| affecte la fonction appelée lors de l'événement key up. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwMouseFunc (void(*func)(int button, int state, int x, int y)) |
| affecte la fonction appelée lorsqu'un utilisateur appuie ou relache un bouton de la souris dans la fenêtre. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwMotionFunc (void(*func)(int x, int y)) |
| affecte la fonction appelée lorsqu'un utilisateur déplace la souris dans la fenêtre tout en ayant un ou plusieurs boutons enfoncés. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwPassiveMotionFunc (void(*func)(int x, int y)) |
| affecte la fonction appelée lorsqu'un utilisateur déplace la souris dans la fenêtre sans qu'aucun bouton ne soit enfoncé Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwIdleFunc (void(*func)(void)) |
| affecte la fonction appelée lors de l'idle (calcul/simulation avant affichage). Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwDisplayFunc (void(*func)(void)) |
| affecte la fonction appelée lors de l'affichage. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwCatchSDL_EventFunc (int(*func)(SDL_Event *)) |
| affecte la fonction appelée lors de la gestion manuelle par le programmeur des événements SDL. Plus de détails...
|
|
GL4DAPI void GL4DAPIENTRY | gl4duwEnableManageEvents (void) |
|
GL4DAPI void GL4DAPIENTRY | gl4duwDisableManageEvents (void) |
|
Fonctions haut-niveau de GL4Dummies pour la gestion des fenêtres avec SDL2.
- Auteur
- Farès BELHADJ, amsi@.nosp@m.ai.u.nosp@m.niv-p.nosp@m.aris.nosp@m.8.fr
- Date
- Februry 01 2016
Définition dans le fichier gl4duw_SDL2.h.
◆ GL4D_BUTTON_LEFT
#define GL4D_BUTTON_LEFT SDL_BUTTON_LEFT |
◆ GL4D_BUTTON_MIDDLE
#define GL4D_BUTTON_MIDDLE SDL_BUTTON_MIDDLE |
◆ GL4D_BUTTON_RIGHT
#define GL4D_BUTTON_RIGHT SDL_BUTTON_RIGHT |
◆ GL4D_BUTTON_X1
#define GL4D_BUTTON_X1 SDL_BUTTON_X1 |
◆ GL4D_BUTTON_X2
#define GL4D_BUTTON_X2 SDL_BUTTON_X2 |
◆ GL4DK_0
◆ GL4DK_1
◆ GL4DK_2
◆ GL4DK_3
◆ GL4DK_4
◆ GL4DK_5
◆ GL4DK_6
◆ GL4DK_7
◆ GL4DK_8
◆ GL4DK_9
◆ GL4DK_a
◆ GL4DK_AC_BACK
#define GL4DK_AC_BACK SDLK_AC_BACK |
◆ GL4DK_AC_BOOKMARKS
#define GL4DK_AC_BOOKMARKS SDLK_AC_BOOKMARKS |
◆ GL4DK_AC_FORWARD
#define GL4DK_AC_FORWARD SDLK_AC_FORWARD |
◆ GL4DK_AC_HOME
#define GL4DK_AC_HOME SDLK_AC_HOME |
◆ GL4DK_AC_REFRESH
#define GL4DK_AC_REFRESH SDLK_AC_REFRESH |
◆ GL4DK_AC_SEARCH
#define GL4DK_AC_SEARCH SDLK_AC_SEARCH |
◆ GL4DK_AC_STOP
#define GL4DK_AC_STOP SDLK_AC_STOP |
◆ GL4DK_AGAIN
#define GL4DK_AGAIN SDLK_AGAIN |
◆ GL4DK_ALTERASE
#define GL4DK_ALTERASE SDLK_ALTERASE |
◆ GL4DK_AMPERSAND
#define GL4DK_AMPERSAND SDLK_AMPERSAND |
◆ GL4DK_APPLICATION
#define GL4DK_APPLICATION SDLK_APPLICATION |
◆ GL4DK_ASTERISK
#define GL4DK_ASTERISK SDLK_ASTERISK |
◆ GL4DK_AT
◆ GL4DK_AUDIOMUTE
#define GL4DK_AUDIOMUTE SDLK_AUDIOMUTE |
◆ GL4DK_AUDIONEXT
#define GL4DK_AUDIONEXT SDLK_AUDIONEXT |
◆ GL4DK_AUDIOPLAY
#define GL4DK_AUDIOPLAY SDLK_AUDIOPLAY |
◆ GL4DK_AUDIOPREV
#define GL4DK_AUDIOPREV SDLK_AUDIOPREV |
◆ GL4DK_AUDIOSTOP
#define GL4DK_AUDIOSTOP SDLK_AUDIOSTOP |
◆ GL4DK_b
◆ GL4DK_BACKQUOTE
#define GL4DK_BACKQUOTE SDLK_BACKQUOTE |
◆ GL4DK_BACKSLASH
#define GL4DK_BACKSLASH SDLK_BACKSLASH |
◆ GL4DK_BACKSPACE
#define GL4DK_BACKSPACE SDLK_BACKSPACE |
◆ GL4DK_BRIGHTNESSDOWN
#define GL4DK_BRIGHTNESSDOWN SDLK_BRIGHTNESSDOWN |
◆ GL4DK_BRIGHTNESSUP
#define GL4DK_BRIGHTNESSUP SDLK_BRIGHTNESSUP |
◆ GL4DK_c
◆ GL4DK_CALCULATOR
#define GL4DK_CALCULATOR SDLK_CALCULATOR |
◆ GL4DK_CANCEL
#define GL4DK_CANCEL SDLK_CANCEL |
◆ GL4DK_CAPSLOCK
#define GL4DK_CAPSLOCK SDLK_CAPSLOCK |
◆ GL4DK_CARET
#define GL4DK_CARET SDLK_CARET |
◆ GL4DK_CLEAR
#define GL4DK_CLEAR SDLK_CLEAR |
◆ GL4DK_CLEARAGAIN
#define GL4DK_CLEARAGAIN SDLK_CLEARAGAIN |
◆ GL4DK_COLON
#define GL4DK_COLON SDLK_COLON |
◆ GL4DK_COMMA
#define GL4DK_COMMA SDLK_COMMA |
◆ GL4DK_COMPUTER
#define GL4DK_COMPUTER SDLK_COMPUTER |
◆ GL4DK_COPY
#define GL4DK_COPY SDLK_COPY |
◆ GL4DK_CRSEL
#define GL4DK_CRSEL SDLK_CRSEL |
◆ GL4DK_CURRENCYSUBUNIT
#define GL4DK_CURRENCYSUBUNIT SDLK_CURRENCYSUBUNIT |
◆ GL4DK_CURRENCYUNIT
#define GL4DK_CURRENCYUNIT SDLK_CURRENCYUNIT |
◆ GL4DK_CUT
#define GL4DK_CUT SDLK_CUT |
◆ GL4DK_d
◆ GL4DK_DECIMALSEPARATOR
#define GL4DK_DECIMALSEPARATOR SDLK_DECIMALSEPARATOR |
◆ GL4DK_DELETE
#define GL4DK_DELETE SDLK_DELETE |
◆ GL4DK_DISPLAYSWITCH
#define GL4DK_DISPLAYSWITCH SDLK_DISPLAYSWITCH |
◆ GL4DK_DOLLAR
#define GL4DK_DOLLAR SDLK_DOLLAR |
◆ GL4DK_DOWN
#define GL4DK_DOWN SDLK_DOWN |
◆ GL4DK_e
◆ GL4DK_EJECT
#define GL4DK_EJECT SDLK_EJECT |
◆ GL4DK_END
#define GL4DK_END SDLK_END |
◆ GL4DK_EQUALS
#define GL4DK_EQUALS SDLK_EQUALS |
◆ GL4DK_ESCAPE
#define GL4DK_ESCAPE SDLK_ESCAPE |
◆ GL4DK_EXCLAIM
#define GL4DK_EXCLAIM SDLK_EXCLAIM |
◆ GL4DK_EXECUTE
#define GL4DK_EXECUTE SDLK_EXECUTE |
◆ GL4DK_EXSEL
#define GL4DK_EXSEL SDLK_EXSEL |
◆ GL4DK_f
◆ GL4DK_F1
◆ GL4DK_F10
#define GL4DK_F10 SDLK_F10 |
◆ GL4DK_F11
#define GL4DK_F11 SDLK_F11 |
◆ GL4DK_F12
#define GL4DK_F12 SDLK_F12 |
◆ GL4DK_F13
#define GL4DK_F13 SDLK_F13 |
◆ GL4DK_F14
#define GL4DK_F14 SDLK_F14 |
◆ GL4DK_F15
#define GL4DK_F15 SDLK_F15 |
◆ GL4DK_F16
#define GL4DK_F16 SDLK_F16 |
◆ GL4DK_F17
#define GL4DK_F17 SDLK_F17 |
◆ GL4DK_F18
#define GL4DK_F18 SDLK_F18 |
◆ GL4DK_F19
#define GL4DK_F19 SDLK_F19 |
◆ GL4DK_F2
◆ GL4DK_F20
#define GL4DK_F20 SDLK_F20 |
◆ GL4DK_F21
#define GL4DK_F21 SDLK_F21 |
◆ GL4DK_F22
#define GL4DK_F22 SDLK_F22 |
◆ GL4DK_F23
#define GL4DK_F23 SDLK_F23 |
◆ GL4DK_F24
#define GL4DK_F24 SDLK_F24 |
◆ GL4DK_F3
◆ GL4DK_F4
◆ GL4DK_F5
◆ GL4DK_F6
◆ GL4DK_F7
◆ GL4DK_F8
◆ GL4DK_F9
◆ GL4DK_FIND
#define GL4DK_FIND SDLK_FIND |
◆ GL4DK_g
◆ GL4DK_GREATER
#define GL4DK_GREATER SDLK_GREATER |
◆ GL4DK_h
◆ GL4DK_HASH
#define GL4DK_HASH SDLK_HASH |
◆ GL4DK_HELP
#define GL4DK_HELP SDLK_HELP |
◆ GL4DK_HOME
#define GL4DK_HOME SDLK_HOME |
◆ GL4DK_i
◆ GL4DK_INSERT
#define GL4DK_INSERT SDLK_INSERT |
◆ GL4DK_j
◆ GL4DK_k
◆ GL4DK_KBDILLUMDOWN
#define GL4DK_KBDILLUMDOWN SDLK_KBDILLUMDOWN |
◆ GL4DK_KBDILLUMTOGGLE
#define GL4DK_KBDILLUMTOGGLE SDLK_KBDILLUMTOGGLE |
◆ GL4DK_KBDILLUMUP
#define GL4DK_KBDILLUMUP SDLK_KBDILLUMUP |
◆ GL4DK_KP_0
#define GL4DK_KP_0 SDLK_KP_0 |
◆ GL4DK_KP_00
#define GL4DK_KP_00 SDLK_KP_00 |
◆ GL4DK_KP_000
#define GL4DK_KP_000 SDLK_KP_000 |
◆ GL4DK_KP_1
#define GL4DK_KP_1 SDLK_KP_1 |
◆ GL4DK_KP_2
#define GL4DK_KP_2 SDLK_KP_2 |
◆ GL4DK_KP_3
#define GL4DK_KP_3 SDLK_KP_3 |
◆ GL4DK_KP_4
#define GL4DK_KP_4 SDLK_KP_4 |
◆ GL4DK_KP_5
#define GL4DK_KP_5 SDLK_KP_5 |
◆ GL4DK_KP_6
#define GL4DK_KP_6 SDLK_KP_6 |
◆ GL4DK_KP_7
#define GL4DK_KP_7 SDLK_KP_7 |
◆ GL4DK_KP_8
#define GL4DK_KP_8 SDLK_KP_8 |
◆ GL4DK_KP_9
#define GL4DK_KP_9 SDLK_KP_9 |
◆ GL4DK_KP_A
#define GL4DK_KP_A SDLK_KP_A |
◆ GL4DK_KP_AMPERSAND
#define GL4DK_KP_AMPERSAND SDLK_KP_AMPERSAND |
◆ GL4DK_KP_AT
#define GL4DK_KP_AT SDLK_KP_AT |
◆ GL4DK_KP_B
#define GL4DK_KP_B SDLK_KP_B |
◆ GL4DK_KP_BACKSPACE
#define GL4DK_KP_BACKSPACE SDLK_KP_BACKSPACE |
◆ GL4DK_KP_BINARY
#define GL4DK_KP_BINARY SDLK_KP_BINARY |
◆ GL4DK_KP_C
#define GL4DK_KP_C SDLK_KP_C |
◆ GL4DK_KP_CLEAR
#define GL4DK_KP_CLEAR SDLK_KP_CLEAR |
◆ GL4DK_KP_CLEARENTRY
#define GL4DK_KP_CLEARENTRY SDLK_KP_CLEARENTRY |
◆ GL4DK_KP_COLON
#define GL4DK_KP_COLON SDLK_KP_COLON |
◆ GL4DK_KP_COMMA
#define GL4DK_KP_COMMA SDLK_KP_COMMA |
◆ GL4DK_KP_D
#define GL4DK_KP_D SDLK_KP_D |
◆ GL4DK_KP_DBLAMPERSAND
#define GL4DK_KP_DBLAMPERSAND SDLK_KP_DBLAMPERSAND |
◆ GL4DK_KP_DBLVERTICALBAR
#define GL4DK_KP_DBLVERTICALBAR SDLK_KP_DBLVERTICALBAR |
◆ GL4DK_KP_DECIMAL
#define GL4DK_KP_DECIMAL SDLK_KP_DECIMAL |
◆ GL4DK_KP_DIVIDE
#define GL4DK_KP_DIVIDE SDLK_KP_DIVIDE |
◆ GL4DK_KP_E
#define GL4DK_KP_E SDLK_KP_E |
◆ GL4DK_KP_ENTER
#define GL4DK_KP_ENTER SDLK_KP_ENTER |
◆ GL4DK_KP_EQUALS
#define GL4DK_KP_EQUALS SDLK_KP_EQUALS |
◆ GL4DK_KP_EQUALSAS400
#define GL4DK_KP_EQUALSAS400 SDLK_KP_EQUALSAS400 |
◆ GL4DK_KP_EXCLAM
#define GL4DK_KP_EXCLAM SDLK_KP_EXCLAM |
◆ GL4DK_KP_F
#define GL4DK_KP_F SDLK_KP_F |
◆ GL4DK_KP_GREATER
#define GL4DK_KP_GREATER SDLK_KP_GREATER |
◆ GL4DK_KP_HASH
#define GL4DK_KP_HASH SDLK_KP_HASH |
◆ GL4DK_KP_HEXADECIMAL
#define GL4DK_KP_HEXADECIMAL SDLK_KP_HEXADECIMAL |
◆ GL4DK_KP_LEFTBRACE
#define GL4DK_KP_LEFTBRACE SDLK_KP_LEFTBRACE |
◆ GL4DK_KP_LEFTPAREN
#define GL4DK_KP_LEFTPAREN SDLK_KP_LEFTPAREN |
◆ GL4DK_KP_LESS
#define GL4DK_KP_LESS SDLK_KP_LESS |
◆ GL4DK_KP_MEMADD
#define GL4DK_KP_MEMADD SDLK_KP_MEMADD |
◆ GL4DK_KP_MEMCLEAR
#define GL4DK_KP_MEMCLEAR SDLK_KP_MEMCLEAR |
◆ GL4DK_KP_MEMDIVIDE
#define GL4DK_KP_MEMDIVIDE SDLK_KP_MEMDIVIDE |
◆ GL4DK_KP_MEMMULTIPLY
#define GL4DK_KP_MEMMULTIPLY SDLK_KP_MEMMULTIPLY |
◆ GL4DK_KP_MEMRECALL
#define GL4DK_KP_MEMRECALL SDLK_KP_MEMRECALL |
◆ GL4DK_KP_MEMSTORE
#define GL4DK_KP_MEMSTORE SDLK_KP_MEMSTORE |
◆ GL4DK_KP_MEMSUBTRACT
#define GL4DK_KP_MEMSUBTRACT SDLK_KP_MEMSUBTRACT |
◆ GL4DK_KP_MINUS
#define GL4DK_KP_MINUS SDLK_KP_MINUS |
◆ GL4DK_KP_MULTIPLY
#define GL4DK_KP_MULTIPLY SDLK_KP_MULTIPLY |
◆ GL4DK_KP_OCTAL
#define GL4DK_KP_OCTAL SDLK_KP_OCTAL |
◆ GL4DK_KP_PERCENT
#define GL4DK_KP_PERCENT SDLK_KP_PERCENT |
◆ GL4DK_KP_PERIOD
#define GL4DK_KP_PERIOD SDLK_KP_PERIOD |
◆ GL4DK_KP_PLUS
#define GL4DK_KP_PLUS SDLK_KP_PLUS |
◆ GL4DK_KP_PLUSMINUS
#define GL4DK_KP_PLUSMINUS SDLK_KP_PLUSMINUS |
◆ GL4DK_KP_POWER
#define GL4DK_KP_POWER SDLK_KP_POWER |
◆ GL4DK_KP_RIGHTBRACE
#define GL4DK_KP_RIGHTBRACE SDLK_KP_RIGHTBRACE |
◆ GL4DK_KP_RIGHTPAREN
#define GL4DK_KP_RIGHTPAREN SDLK_KP_RIGHTPAREN |
◆ GL4DK_KP_SPACE
#define GL4DK_KP_SPACE SDLK_KP_SPACE |
◆ GL4DK_KP_TAB
#define GL4DK_KP_TAB SDLK_KP_TAB |
◆ GL4DK_KP_VERTICALBAR
#define GL4DK_KP_VERTICALBAR SDLK_KP_VERTICALBAR |
◆ GL4DK_KP_XOR
#define GL4DK_KP_XOR SDLK_KP_XOR |
◆ GL4DK_l
◆ GL4DK_LALT
#define GL4DK_LALT SDLK_LALT |
◆ GL4DK_LCTRL
#define GL4DK_LCTRL SDLK_LCTRL |
◆ GL4DK_LEFT
#define GL4DK_LEFT SDLK_LEFT |
◆ GL4DK_LEFTBRACKET
#define GL4DK_LEFTBRACKET SDLK_LEFTBRACKET |
◆ GL4DK_LEFTPAREN
#define GL4DK_LEFTPAREN SDLK_LEFTPAREN |
◆ GL4DK_LESS
#define GL4DK_LESS SDLK_LESS |
◆ GL4DK_LGUI
#define GL4DK_LGUI SDLK_LGUI |
◆ GL4DK_LSHIFT
#define GL4DK_LSHIFT SDLK_LSHIFT |
◆ GL4DK_m
◆ GL4DK_MAIL
#define GL4DK_MAIL SDLK_MAIL |
◆ GL4DK_MEDIASELECT
#define GL4DK_MEDIASELECT SDLK_MEDIASELECT |
◆ GL4DK_MENU
#define GL4DK_MENU SDLK_MENU |
◆ GL4DK_MINUS
#define GL4DK_MINUS SDLK_MINUS |
◆ GL4DK_MODE
#define GL4DK_MODE SDLK_MODE |
◆ GL4DK_MUTE
#define GL4DK_MUTE SDLK_MUTE |
◆ GL4DK_n
◆ GL4DK_NUMLOCKCLEAR
#define GL4DK_NUMLOCKCLEAR SDLK_NUMLOCKCLEAR |
◆ GL4DK_o
◆ GL4DK_OPER
#define GL4DK_OPER SDLK_OPER |
◆ GL4DK_OUT
#define GL4DK_OUT SDLK_OUT |
◆ GL4DK_p
◆ GL4DK_PAGEDOWN
#define GL4DK_PAGEDOWN SDLK_PAGEDOWN |
◆ GL4DK_PAGEUP
#define GL4DK_PAGEUP SDLK_PAGEUP |
◆ GL4DK_PASTE
#define GL4DK_PASTE SDLK_PASTE |
◆ GL4DK_PAUSE
#define GL4DK_PAUSE SDLK_PAUSE |
◆ GL4DK_PERCENT
#define GL4DK_PERCENT SDLK_PERCENT |
◆ GL4DK_PERIOD
#define GL4DK_PERIOD SDLK_PERIOD |
◆ GL4DK_PLUS
#define GL4DK_PLUS SDLK_PLUS |
◆ GL4DK_POWER
#define GL4DK_POWER SDLK_POWER |
◆ GL4DK_PRINTSCREEN
#define GL4DK_PRINTSCREEN SDLK_PRINTSCREEN |
◆ GL4DK_PRIOR
#define GL4DK_PRIOR SDLK_PRIOR |
◆ GL4DK_q
◆ GL4DK_QUESTION
#define GL4DK_QUESTION SDLK_QUESTION |
◆ GL4DK_QUOTE
#define GL4DK_QUOTE SDLK_QUOTE |
◆ GL4DK_QUOTEDBL
#define GL4DK_QUOTEDBL SDLK_QUOTEDBL |
◆ GL4DK_r
◆ GL4DK_RALT
#define GL4DK_RALT SDLK_RALT |
◆ GL4DK_RCTRL
#define GL4DK_RCTRL SDLK_RCTRL |
◆ GL4DK_RETURN
#define GL4DK_RETURN SDLK_RETURN |
◆ GL4DK_RETURN2
#define GL4DK_RETURN2 SDLK_RETURN2 |
◆ GL4DK_RGUI
#define GL4DK_RGUI SDLK_RGUI |
◆ GL4DK_RIGHT
#define GL4DK_RIGHT SDLK_RIGHT |
◆ GL4DK_RIGHTBRACKET
#define GL4DK_RIGHTBRACKET SDLK_RIGHTBRACKET |
◆ GL4DK_RIGHTPAREN
#define GL4DK_RIGHTPAREN SDLK_RIGHTPAREN |
◆ GL4DK_RSHIFT
#define GL4DK_RSHIFT SDLK_RSHIFT |
◆ GL4DK_s
◆ GL4DK_SCROLLLOCK
#define GL4DK_SCROLLLOCK SDLK_SCROLLLOCK |
◆ GL4DK_SELECT
#define GL4DK_SELECT SDLK_SELECT |
◆ GL4DK_SEMICOLON
#define GL4DK_SEMICOLON SDLK_SEMICOLON |
◆ GL4DK_SEPARATOR
#define GL4DK_SEPARATOR SDLK_SEPARATOR |
◆ GL4DK_SLASH
#define GL4DK_SLASH SDLK_SLASH |
◆ GL4DK_SLEEP
#define GL4DK_SLEEP SDLK_SLEEP |
◆ GL4DK_SPACE
#define GL4DK_SPACE SDLK_SPACE |
◆ GL4DK_STOP
#define GL4DK_STOP SDLK_STOP |
◆ GL4DK_SYSREQ
#define GL4DK_SYSREQ SDLK_SYSREQ |
◆ GL4DK_t
◆ GL4DK_TAB
#define GL4DK_TAB SDLK_TAB |
◆ GL4DK_THOUSANDSSEPARATOR
#define GL4DK_THOUSANDSSEPARATOR SDLK_THOUSANDSSEPARATOR |
◆ GL4DK_u
◆ GL4DK_UNDERSCORE
#define GL4DK_UNDERSCORE SDLK_UNDERSCORE |
◆ GL4DK_UNDO
#define GL4DK_UNDO SDLK_UNDO |
◆ GL4DK_UNKNOWN
#define GL4DK_UNKNOWN SDLK_UNKNOWN |
◆ GL4DK_UP
◆ GL4DK_v
◆ GL4DK_VOLUMEDOWN
#define GL4DK_VOLUMEDOWN SDLK_VOLUMEDOWN |
◆ GL4DK_VOLUMEUP
#define GL4DK_VOLUMEUP SDLK_VOLUMEUP |
◆ GL4DK_w
◆ GL4DK_WWW
#define GL4DK_WWW SDLK_WWW |
◆ GL4DK_x
◆ GL4DK_y
◆ GL4DK_z
◆ GL4DW_BORDERLESS
#define GL4DW_BORDERLESS SDL_WINDOW_BORDERLESS |
◆ GL4DW_CONTEXT_PROFILE_COMPATIBILITY
#define GL4DW_CONTEXT_PROFILE_COMPATIBILITY SDL_GL_CONTEXT_PROFILE_COMPATIBILITY |
◆ GL4DW_CONTEXT_PROFILE_CORE
#define GL4DW_CONTEXT_PROFILE_CORE SDL_GL_CONTEXT_PROFILE_CORE |
◆ GL4DW_CONTEXT_PROFILE_ES
#define GL4DW_CONTEXT_PROFILE_ES SDL_GL_CONTEXT_PROFILE_ES |
◆ GL4DW_FOREIGN
#define GL4DW_FOREIGN SDL_WINDOW_FOREIGN |
window not created by SDL
◆ GL4DW_FULLSCREEN
#define GL4DW_FULLSCREEN SDL_WINDOW_FULLSCREEN |
◆ GL4DW_FULLSCREEN_DESKTOP
#define GL4DW_FULLSCREEN_DESKTOP SDL_WINDOW_FULLSCREEN_DESKTOP |
fullscreen window in desktop mode (same resolution)
◆ GL4DW_HIDDEN
#define GL4DW_HIDDEN SDL_WINDOW_HIDDEN |
◆ GL4DW_INPUT_FOCUS
#define GL4DW_INPUT_FOCUS SDL_WINDOW_INPUT_FOCUS |
◆ GL4DW_INPUT_GRABBED
#define GL4DW_INPUT_GRABBED SDL_WINDOW_INPUT_GRABBED |
window has grabbed input focus
◆ GL4DW_MAXIMIZED
#define GL4DW_MAXIMIZED SDL_WINDOW_MAXIMIZED |
◆ GL4DW_MINIMIZED
#define GL4DW_MINIMIZED SDL_WINDOW_MINIMIZED |
◆ GL4DW_MOUSE_FOCUS
#define GL4DW_MOUSE_FOCUS SDL_WINDOW_MOUSE_FOCUS |
◆ GL4DW_OPENGL
#define GL4DW_OPENGL SDL_WINDOW_OPENGL |
window usable with OpenGL context
◆ GL4DW_POS_CENTERED
#define GL4DW_POS_CENTERED SDL_WINDOWPOS_CENTERED |
Used to indicate that the window position should be centered.
◆ GL4DW_POS_UNDEFINED
#define GL4DW_POS_UNDEFINED SDL_WINDOWPOS_UNDEFINED |
Used to indicate that you don't care what the window position is.
◆ GL4DW_RESIZABLE
#define GL4DW_RESIZABLE SDL_WINDOW_RESIZABLE |
◆ GL4DW_SHOWN
#define GL4DW_SHOWN SDL_WINDOW_SHOWN |
◆ gl4duwBindWindow()
recherche et positionne "courant" une fenêtre en fonction de son titre.
La fenêtre courante est celle qui est affectée par les appelles des fonctions telles que gl4duwResizeFunc, gl4duwKeyDownFunc, gl4duwKeyUpFunc, gl4duwIdleFunc, gl4duwDisplayFunc.
- Paramètres
-
title | titre de la fenêtre SDL recherchée. |
- Renvoie
- GL_TRUE en cas de réussite, GL_FALSE en cas d'échec.
155 window_t wt = {(
char *)title, NULL, 0, NULL, NULL, NULL,
156 NULL, NULL, NULL, NULL, NULL, NULL};
Références _btWindows, _curWindow, btFind(), pair_t::compResult, window_t::glContext, pair_t::ptr, window_t::window, et windowCmpFunc().
◆ gl4duwCatchSDL_EventFunc()
affecte la fonction appelée lors de la gestion manuelle par le programmeur des événements SDL.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler pour la gestion manuelle des événements SDL. Cette fonction reçoit le pointeur vers l'événement bas-niveau SDL à traiter. Si la fonction utilisateur traitant l'événement renvoie une valeur non nulle ceci implique que l'événement est traité et ne doit plus figurer dans la liste des événements à traiter, sinon, potentiellement l'événement pourra être traité par une des "autres" fonctions "événements" spécialisées. |
Références _curWindow, window_t::catchSDL_Event, et fake_catchSDL_Event().
◆ gl4duwCreateWindow()
GL4DAPI GLboolean GL4DAPIENTRY gl4duwCreateWindow |
( |
int |
argc, |
|
|
char ** |
argv, |
|
|
const char * |
title, |
|
|
int |
x, |
|
|
int |
y, |
|
|
int |
width, |
|
|
int |
height, |
|
|
Uint32 |
wflags |
|
) |
| |
créé une fenêtre SDL avec un contexte OpenGL.
Pour modifier les valeurs utilisée par le contexte OpenGL, utiliser la fonction gl4duwSetGLAttributes.
- Paramètres
-
argc | nombre d'arguments passés au programme (premier argument de la fonction main). |
argv | liste des arguments passés au programme (second argument de la fonction main). |
title | titre de la fenêtre SDL à créer. |
x | la postion x de la fenêtre à créer ou GL4DW_POS_CENTERED, ou GL4DW_POS_UNDEFINED. |
y | la postion y de la fenêtre à créer ou GL4DW_POS_CENTERED, ou GL4DW_POS_UNDEFINED. |
width | la largeur de la fenêtre à créer. |
height | la hauteur de la fenêtre à créer. |
wflags | des options sur la fenêtre à créer. Peut être 0 ou une ou toute combinaison (via OR "|") de : GL4DW_FULLSCREEN, GL4DW_FULLSCREEN_DESKTOP, GL4DW_OPENGL, GL4DW_HIDDEN, GL4DW_BORDERLESS, GL4DW_RESIZABLE, GL4DW_MINIMIZED, GL4DW_MAXIMIZED, GL4DW_INPUT_GRABBED, GL4DW_ALLOW_HIGHDPI. |
- Renvoie
- GL_TRUE en cas de réussite, GL_FALSE en cas d'échec.
- Voir également
- gl4duwSetGLAttributes
-
SDL_CreateWindow
110 SDL_Window * win = NULL;
111 SDL_GLContext oglc = NULL;
112 window_t wt = {(
char *)title, NULL, 0, NULL, NULL, NULL,
113 NULL, NULL, NULL, NULL, NULL, NULL};
118 fprintf(stderr,
"%s (%d): %s:\n\tErreur lors de la creation de la fenetre SDL : une fenetre portant le meme nom existe deja\n",
119 __FILE__, __LINE__, __func__);
130 fprintf(stderr,
"%s (%d): %s:\n\tErreur lors de la creation de la fenetre SDL : %s",
131 __FILE__, __LINE__, __func__, SDL_GetError());
134 if( (oglc = SDL_GL_CreateContext(win)) == NULL ) {
135 SDL_DestroyWindow(win);
136 fprintf(stderr,
"%s (%d): %s:\n\tErreur lors de la creation du contexte OpenGL : %s",
137 __FILE__, __LINE__, __func__, SDL_GetError());
143 fprintf(stderr,
"OpenGL version: %s\n", glGetString(GL_VERSION));
144 fprintf(stderr,
"Supported shaders version: %s\n", glGetString(GL_SHADING_LANGUAGE_VERSION));
Références _btWindows, _curWindow, _glDepthSize, _glDoubleBuffer, _glMajorVersion, _glMinorVersion, _glProfileMask, _lastWindown, btFind(), btInsert(), pair_t::compResult, GL4DW_OPENGL, GL4DW_POS_CENTERED, initGL4DUW(), newWindow(), pair_t::ptr, et windowCmpFunc().
◆ gl4duwDisableManageEvents()
◆ gl4duwDisplayFunc()
◆ gl4duwEnableManageEvents()
◆ gl4duwGetSDL_Window()
◆ gl4duwGetWindowSize()
récupère la largeur et la hauteur de la fenêtre courante.
- Paramètres
-
w | pointeur vers entier où sera renseignée la largeur de la fenêtre. |
h | pointeur vers entier où sera renseignée la hauteur de la fenêtre. |
Références _curWindow, et window_t::window.
◆ gl4duwIdleFunc()
affecte la fonction appelée lors de l'idle (calcul/simulation avant affichage).
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler pour réaliser la phase calcul/simulation. |
Références _curWindow, fake_idle(), et window_t::idle.
◆ gl4duwKeyDownFunc()
affecte la fonction appelée lors de l'événement key down.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du de l'événement keydown. Cette dernière reçoit en paramètre le code keycode de la touche enfoncée (voir les macros GL4DK_xxx). |
Références _curWindow, fake_keydown(), et window_t::keydown.
◆ gl4duwKeyUpFunc()
affecte la fonction appelée lors de l'événement key up.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du de l'événement keyup. Cette dernière reçoit en paramètre le code keycode de la touche relachée (voir les macros GL4DK_xxx). |
Références _curWindow, fake_keyup(), et window_t::keyup.
◆ gl4duwMainLoop()
◆ gl4duwMotionFunc()
affecte la fonction appelée lorsqu'un utilisateur déplace la souris dans la fenêtre tout en ayant un ou plusieurs boutons enfoncés.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du déplacement "drag" de la souris. Cette dernière reçoit en paramètre : l'abscisse x de la souris et son ordonée y. |
Références _curWindow, fake_mousemotion(), et window_t::mousemotion.
◆ gl4duwMouseFunc()
affecte la fonction appelée lorsqu'un utilisateur appuie ou relache un bouton de la souris dans la fenêtre.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du de l'événement lié à la souris. Cette dernière reçoit en paramètre : le code button du bouton concerné (voir les macros GL4D_MOUSE_xxx), l'état state du bouton, l'abscisse x de la souris et son ordonée y. |
Références _curWindow, fake_mousebutton(), et window_t::mousebutton.
◆ gl4duwPassiveMotionFunc()
affecte la fonction appelée lorsqu'un utilisateur déplace la souris dans la fenêtre sans qu'aucun bouton ne soit enfoncé
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du "drop" de la souris. Cette dernière reçoit en paramètre : l'abscisse x de la souris et son ordonée y. |
Références _curWindow, fake_passivemousemotion(), et window_t::passivemousemotion.
◆ gl4duwResizeFunc()
affecte la fonction appelée lors du resize.
- Paramètres
-
func | pointeur vers fonction utilisateur à appeler lors du resize. Cette dernière reçoit en paramètre la largeur width et la hauteur height de la fenêtre. |
Références _curWindow, fake_resize(), et window_t::resize.
◆ gl4duwSetGLAttributes()
GL4DAPI void GL4DAPIENTRY gl4duwSetGLAttributes |
( |
int |
glMajorVersion, |
|
|
int |
glMinorVersion, |
|
|
int |
glProfileMask, |
|
|
int |
glDoubleBuffer, |
|
|
int |
glDepthSize |
|
) |
| |
modifie les paramètre par défaut du contexte OpenGL.
Cette fonction est à appeler avant gl4duwCreateWindow si vous souhaitez que ses paramètres soient pris en compte. Si vous souhaitez modifier plus de paramètres voir la fonction SDL_GL_SetAttribute.
- Paramètres
-
glMajorVersion | version majeure d'OpenGL, par défaut vaut 3. |
glMinorVersion | version mineure d'OpenGL, par défaut vaut 2. |
glProfileMask | modifie le profile d'OpenGL, par défaut vaut GL4DW_CONTEXT_PROFILE_CORE mais peut aussi prendre GL4DW_CONTEXT_PROFILE_COMPATIBILITY, GL4DW_CONTEXT_PROFILE_ES. |
glDoubleBuffer | modifie l'état actif ou non du double buffer, par défaut vaut 1 (vrai). |
glDepthSize | modifie la dimension (nombre de bits utilisés) du buffer de profondeur, par défaut vaut 16. |
- Voir également
- gl4duwCreateWindow
Références _glDepthSize, _glDoubleBuffer, _glMajorVersion, _glMinorVersion, et _glProfileMask.
void(* mousemotion)(int x, int y)
Definition: gl4duw_SDL2.c:27
static void fake_mousebutton(int button, int state, int x, int y)
fonction fictive liée au callback d'un bouton de souris enfoncé ou relaché.
Definition: gl4duw_SDL2.c:72
pair_t btInsert(bin_tree_t **tree, void *data, int(*compar)(const void *newData, const void *nodeData))
Definition: bin_tree.c:13
void ** ptr
Definition: bin_tree.h:23
SDL_GLContext glContext
Definition: gl4duw_SDL2.c:22
void(* keydown)(int keycode)
Definition: gl4duw_SDL2.c:24
#define GL4DW_POS_CENTERED
Used to indicate that the window position should be centered.
Definition: gl4duw_SDL2.h:316
void(* mousebutton)(int button, int state, int x, int y)
Definition: gl4duw_SDL2.c:26
#define GL4DW_OPENGL
window usable with OpenGL context
Definition: gl4duw_SDL2.h:256
void(* keyup)(int keycode)
Definition: gl4duw_SDL2.c:25
static window_t * _curWindow
la fenêtre window_t courante (coté code,
Definition: gl4duw_SDL2.c:39
static bin_tree_t * _btWindows
arbre binaire contenant l'ensemble des fenêtres créées.
Definition: gl4duw_SDL2.c:35
static int _hasManageEvents
flag permettant de savoir si la lib gère les événements
Definition: gl4duw_SDL2.c:47
pair_t btFind(bin_tree_t **tree, const void *data, int(*compar)(const void *newData, const void *nodeData))
Definition: bin_tree.c:32
static int fake_catchSDL_Event(SDL_Event *event)
fonction fictive liée au callback de catchSDL_Event.
Definition: gl4duw_SDL2.c:93
static void manageEvents(void)
dispatche les événement selon le type en utilisant les callbacks de la fenêtre ayant le focus.
Definition: gl4duw_SDL2.c:319
structure de données englobant le nom de la fenêtre, le pointeur vers sa structure SDL,...
Definition: gl4duw_SDL2.c:19
Definition: bin_tree.h:28
static window_t * newWindow(const char *name, SDL_Window *win, SDL_GLContext oglc)
créé la fenêtre de type window_t.
Definition: gl4duw_SDL2.c:248
void(* passivemousemotion)(int x, int y)
Definition: gl4duw_SDL2.c:28
static void fake_passivemousemotion(int x, int y)
fonction fictive liée au callback du mouvement de la souris sans bouton enfoncé.
Definition: gl4duw_SDL2.c:84
Definition: bin_tree.h:22
SDL_Window * window
Definition: gl4duw_SDL2.c:21
static void fake_keydown(int keycode)
fonction fictive liée au callback de touche clavier enfoncée.
Definition: gl4duw_SDL2.c:64
void(* idle)(void)
Definition: gl4duw_SDL2.c:29
int compResult
Definition: bin_tree.h:24
static void fake_mousemotion(int x, int y)
fonction fictive liée au callback du mouvement de la souris avec bouton enfoncé.
Definition: gl4duw_SDL2.c:79
int gl4duUpdateShaders(void)
parcours la liste des shaders shaders_list et vérifie s'il y a besoin de mettre à jour le shader (rec...
Definition: gl4du.c:659
static int _glMinorVersion
Definition: gl4duw_SDL2.c:43
int(* catchSDL_Event)(SDL_Event *event)
Definition: gl4duw_SDL2.c:31
static int _glMajorVersion
les paramètres par défaut du contexte OpenGL
Definition: gl4duw_SDL2.c:43
void gl4duPrintFPS(FILE *fp)
imprime dans le fichier pointé par fp le Frame-Per-Second.
Definition: gl4du.c:252
static void fake_display(void)
fonction fictive liée au callback de display.
Definition: gl4duw_SDL2.c:91
static bin_tree_t ** _lastWindown
adresse du pointeur vers le noeud référençant la dernière fenêtre créée.
Definition: gl4duw_SDL2.c:37
static int windowCmpFunc(const void *w1, const void *w2)
fonction de comparaison de deux fenêtres window_t en fonction du nom pour insertion dans l'arbre bina...
Definition: gl4duw_SDL2.c:279
static void fake_idle(void)
fonction fictive liée au callback de l'état idle de la fenêtre.
Definition: gl4duw_SDL2.c:89
static void fake_keyup(int keycode)
fonction fictive liée au callback de touche clavier relachée.
Definition: gl4duw_SDL2.c:68
static int initGL4DUW(int argc, char **argv)
initialise SDL et GL4Dummies.
Definition: gl4duw_SDL2.c:227
void(* display)(void)
Definition: gl4duw_SDL2.c:30
void btForAll(bin_tree_t *ptr, void(*todo)(void *, void **), void **ldata)
Definition: bin_tree.c:113
static int _glProfileMask
Definition: gl4duw_SDL2.c:43
void(* resize)(int w, int h)
Definition: gl4duw_SDL2.c:23
static void mainLoopBody(void *window, void **data)
corps de la boucle principale événement/simulation/affichage
Definition: gl4duw_SDL2.c:381
static int _glDepthSize
Definition: gl4duw_SDL2.c:43
static void fake_resize(int w, int h)
fonction fictive liée au callback de resize de la fenêtre.
Definition: gl4duw_SDL2.c:59
static int _glDoubleBuffer
Definition: gl4duw_SDL2.c:43