- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

# src/InputControl/Keyboard.hpp

Go to the documentation of this file.

    00001 #ifndef INPUT_CONTROL_KEYBOARD_HPP
    00002 #define INPUT_CONTROL_KEYBOARD_HPP
    00003
    00004 // Détection du système cible...
    00005 #include "usgeDetectSystem.h"
    00006
    00007 // La classe mère
    00008 #include "InputControl.hpp"
    00009
    00010 #include "Chrono/Chrono.hpp"
    00011
    00012
    00013 namespace USpeedGameEngine
    00014 {
    00015
    00016 class InputControl::Keyboard
    00017 {
    00018     /****************
    00019     * Les attributs *
    00020     ****************/
    00021     public :
    00022     protected :
    00023     private :
    00024         #ifdef TARGET_SYSTEM_PSP
    00025         #elif defined TARGET_SYSTEM_WIN32
    00026             #define USGE_KEYBOARD_KEYS_MAX_COUNT    256
    00027
    00028             Chrono keyDelay[USGE_KEYBOARD_KEYS_MAX_COUNT];
    00036             unsigned long int keyMinDelay[USGE_KEYBOARD_KEYS_MAX_COUNT][2];
    00046             char keyStateStep[USGE_KEYBOARD_KEYS_MAX_COUNT];
    00048             bool keyPreviousStates[USGE_KEYBOARD_KEYS_MAX_COUNT];
    00049         #endif
    00050
    00051     /***************
    00052     * Les méthodes *
    00053     ***************/
    00054     public :
    00055         // Constructeur par défaut
    00056         Keyboard();
    00057         // Destructeur par défaut
    00058         ~Keyboard();
    00059
    00060         // Remet à zéro l'état des contrôles et les délais
    00061         void resetStates();
    00062         // Retourne l'état d'une touche du clavier
    00063         bool getKeyState(unsigned int keyNum);
    00064
    00066         // Affectations des délais de pressions //
    00068         // Permet de définir le temps minimum autorisé entre chaque pression de touches
    00069         void setKeyDelay(unsigned int keyNum, unsigned long int msTime);
    00070         void setKeyDelay(unsigned int keyNum, unsigned long int first, unsigned long int next);
    00071         // Permet de définir le temps minimum autorisé entre chaque pression pour TOUTES les touches
    00072         void setKeyDelayAll(unsigned long int msTime);
    00073         void setKeyDelayAll(unsigned long int first, unsigned long int next);
    00074
    00075     protected :
    00076     private :
    00077 };
    00078 }        // Fin "namespace USpeedGameEngine"
    00079
    00080 #endif