application de base SDL + openGL. consultez le libSDL Programming Guide More...
#include <App.h>
Inherited by GLSLCC.
Public Member Functions | |
virtual | ~App () |
destruction de l'application. | |
int | resizeWindow (const int w, const int h, const unsigned int flags=0) |
redimensionne la fenetre. | |
int | windowWidth () const |
renvoie les dimensions de la fenetre | |
int | windowHeight () const |
renvoie les dimensions de la fenetre | |
bool | isClosed () |
indique si la fenetre est fermee. | |
void | Close () |
demander a fermer la fenetre. | |
bool | processEvents () |
traitement des evenements systemes : clavier, souris, fenetre, etc. | |
unsigned char * | getKeys () |
renvoie le tableau d'etat des touches du clavier. | |
unsigned char & | key (const int key) |
renvoie l'etat d'une touche selon son code ascii ou son identifiant SDLK_xxx. | |
initialisation manuelle de l'application. | |
App () | |
construction d'une application par defaut (non initialisee). | |
int | createWindow (const int w, const int h) |
cree une fenetre de dimension w x h et termine l'initialisation. | |
initialisation complete de l'application. | |
App (const int w, const int h) | |
construction d'une application. | |
interception des evenements clavier / souris / redimensionnement. | |
App fournit une implementation par defaut qui ne fait rien (les evenements sont reellement traites par processEvents()). a deriver, pour integrer nvWidgets, par exemple. | |
virtual void | processWindowResize (SDL_ResizeEvent &event) |
traitement des redimensionnements de la fenetre de l'application. | |
virtual void | processMouseButtonEvent (SDL_MouseButtonEvent &event) |
traitement des clicks souris. | |
virtual void | processMouseMotionEvent (SDL_MouseMotionEvent &event) |
traitement des deplacements de la souris. | |
virtual void | processKeyboardEvent (SDL_KeyboardEvent &event) |
traitement des evenements claviers. | |
encapsulation de la boucle principale | |
deriver de App pour construire une nouvelle application. | |
virtual int | init () |
appele apres l'initialisation complete de App et la creation du device. | |
virtual int | run () |
demarre la boucle principale. | |
virtual int | quit () |
appele avant la fermeture de l'application. | |
virtual int | update (const int time, const int delta) |
appele regulierement pour mettre a jour la scene (animations, deplacements, etc. | |
virtual int | draw () |
appele regulierement pour afficher la scene. | |
Protected Member Functions | |
App (const App &) | |
App & | operator= (const App &) |
Protected Attributes | |
unsigned char * | m_key_state |
unsigned int * | m_key_map |
int | m_width |
int | m_height |
int | m_stop |
application de base SDL + openGL. consultez le libSDL Programming Guide
gk::App::App | ( | const int | w, | |
const int | h | |||
) |
construction d'une application.
w | largeur de la fenetre | |
h | largeur de la fenetre |
References Close(), and createWindow().
unsigned char * gk::App::getKeys | ( | ) |
renvoie le tableau d'etat des touches du clavier.
permet de connaitre l'etat d'une touche. le code ascii ou l'identifiant SDLK_xxx peuvent etre utilises comme indices dans le tableau.
la liste des codes est dans libSDL Programming Guide
unsigned char & gk::App::key | ( | const int | key | ) |
renvoie l'etat d'une touche selon son code ascii ou son identifiant SDLK_xxx.
la liste des codes est dans libSDL Programming Guide
exemple : key('a'), ou key(SDLK_UP)
la fonction renvoie une reference, on peut l'utiliser pour desactiver manuellement une touche lorsque l'action a ete traitee et que l'on ne souhaite pas la re-executer a chaque image.
virtual int gk::App::init | ( | ) | [inline, virtual] |
int gk::App::run | ( | ) | [virtual] |
demarre la boucle principale.
App fournit une version complete, il n'est pas necessaire de la redefinir.
References draw(), gk::ProfilerClock::getDelay(), gk::ProfilerClock::getTicks(), init(), isClosed(), processEvents(), quit(), and update().
virtual int gk::App::quit | ( | ) | [inline, virtual] |
virtual int gk::App::update | ( | const int | time, | |
const int | delta | |||
) | [inline, virtual] |
appele regulierement pour mettre a jour la scene (animations, deplacements, etc.
).
time | millisecondes ecoulees depuis le lancement, | |
delta | millisecondes ecoulees depuis l'appel precedent. a redefinir en derivant App. doit renvoyer 0 pour sortir de la boucle principale, ou 1 pour continuer. |
Referenced by run().
virtual int gk::App::draw | ( | ) | [inline, virtual] |