gk::App Class Reference

application de base SDL + openGL. consultez le libSDL Programming Guide More...

#include <App.h>

Inherited by GLSLCC.

List of all members.

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 &)
Appoperator= (const App &)

Protected Attributes

unsigned char * m_key_state
unsigned int * m_key_map
int m_width
int m_height
int m_stop

Detailed Description

application de base SDL + openGL. consultez le libSDL Programming Guide


Constructor & Destructor Documentation

gk::App::App ( const int  w,
const int  h 
)

construction d'une application.

Parameters:
w largeur de la fenetre
h largeur de la fenetre

References Close(), and createWindow().


Member Function Documentation

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

exemple : getKeys()['a'], ou getKeys()[SDLK_UP]

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.

if(key('a')) {
    printf("a\n"); 
    key('a')= 0; 
}
virtual int gk::App::init (  )  [inline, virtual]

appele apres l'initialisation complete de App et la creation du device.

a redefinir en derivant App. doit renvoyer -1 en cas d'echec.

Referenced by run().

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]

appele avant la fermeture de l'application.

a redefinir en derivant App. doit renvoyer -1 en cas d'echec.

Referenced by run().

virtual int gk::App::update ( const int  time,
const int  delta 
) [inline, virtual]

appele regulierement pour mettre a jour la scene (animations, deplacements, etc.

).

Parameters:
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]

appele regulierement pour afficher la scene.

a redefinir en derivant App. doit renvoyer 0 pour sortir de la boucle principale, ou 1 pour continuer.

Referenced by run().


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Friends
Generated on Thu Sep 22 16:34:00 2011 for gKitGL by  doxygen 1.6.3