- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

# src/USpeedGameEngine_MinCAPI.h

Go to the documentation of this file.

    00001 #ifndef USGE_MIN_CAPI_HPP
    00002 #define USGE_MIN_CAPI_HPP
    00003
    00004 // Détection du système cible...
    00005 #include "usgeDetectSystem.h"
    00006
    00007 // Framework d'audit du code
    00008 #include "Core/usgeAudit.h"
    00009
    00010 #ifdef __cplusplus
    00011 extern "C"
    00012 {
    00013 #endif
    00014
    00018     typedef struct USGE_MinCAPI_KeyFrame
    00019     {
    00020         unsigned long int duration;
    00021         float xPosition;
    00022         float yPosition;
    00023         float zPosition;
    00024         float xRotation;
    00025         float yRotation;
    00026         float zRotation;
    00027     } USGE_MinCAPI_KeyFrame;
    00028
    00029     /***************************************************************
    00030      * Le noyau                                                    *
    00031      **************************************************************/
    00032     /* Définition du point d'entrée de l'application. */
    00033     int USGE_CAPI_main(const char* appTitle, int argNumber, char *argList[], void (*customInit)(void), void (*customMain)(unsigned long int), void (*customFinish)(void));
    00034     /* Retourne la version du moteur USpeed Game Engine. */
    00035     const char *USGE_CAPI_engineVersion();
    00036     /* Retourne le rapport "Largeur/Hauteur" de l'écran. */
    00037     float USGE_CAPI_screenRatio();
    00038     /* Choix de l'id de l'icône de l'application Win32 dans les ressources. */
    00039     void USGE_CAPI_windowIcon(unsigned int iconId);
    00040
    00041     /***************************************************************
    00042      * Les surfaces 2D                                             *
    00043      **************************************************************/
    00044     /* Allocation d'une nouvelle surface 2D. */
    00045     void *USGE_CAPI_newSurface2D(const char *imgFilename, int isPNG);
    00046     /* Désallocation d'une surface 2D. */
    00047     void USGE_CAPI_deleteSurface2D(void *surface);
    00048     /* Détermination de la taille d'une surface 2D. */
    00049     void USGE_CAPI_sizeSurface2D(void *surface, float width, float height);
    00050     /* Détermination de la position d'une surface 2D. */
    00051     void USGE_CAPI_positionSurface2D(void *surface, float x, float y);
    00052     /* Détermination des coordonnées d'application de la texture d'une surface 2D. */
    00053     void USGE_CAPI_uvMapSurface2D(void *surface, float xStart, float yStart, float xEnd, float yEnd);
    00054     /* Détermination de la profondeur (position du calque) d'une surface 2D. */
    00055     void USGE_CAPI_layerSurface2D(void *surface, float z);
    00056     /* Affichage de la surface 2D. */
    00057     void USGE_CAPI_renderSurface2D(void *surface);
    00058     /* Permet de définir l'animation associée à une surface 2D. */
    00059     void USGE_CAPI_animationSurface2D(void *surface, void *anim);
    00060
    00061     /***************************************************************
    00062      * Les animations                                              *
    00063      **************************************************************/
    00064     /* Allocation d'une nouvelle animation. */
    00065     void *USGE_CAPI_newAnimation();
    00066     /* Désallocation d'une animation. */
    00067     void USGE_CAPI_deleteAnimation(void *anim);
    00068     /* Suppression de toutes les trames clé pour l'animation. */
    00069     void USGE_CAPI_resetAnimation(void *anim);
    00070     /* Ajoute une trame clé pour l'animation. */
    00071     void USGE_CAPI_addKeyFrameAnimation(void *anim, USGE_MinCAPI_KeyFrame keyFrame);
    00072     /* Lancement de l'animation. */
    00073     void USGE_CAPI_playAnimation(void *anim);
    00074     /* Arrêt et retour au début de l'animation. */
    00075     void USGE_CAPI_stopAnimation(void *anim);
    00076     /* Mise en pause de l'animation. */
    00077     void USGE_CAPI_pauseAnimation(void *anim);
    00078     /* Mise en boucle de l'animation. */
    00079     void USGE_CAPI_loopAnimation(void *anim, int activate);
    00080
    00081     /***************************************************************
    00082      * Le chronomètre                                              *
    00083      **************************************************************/
    00084     /* Remise à zéro du chronomètre. */
    00085     void USGE_CAPI_resetChrono();
    00086     /* Lancement du chronomètre. */
    00087     void USGE_CAPI_runChrono();
    00088     /* Mise en pause du chronomètre. */
    00089     void USGE_CAPI_pauseChrono();
    00090     /* Récupération du temps écoulé (en millisecondes) du chronomètre. */
    00091     unsigned long int USGE_CAPI_readChrono();
    00092
    00093     /***************************************************************
    00094      * Clavier, souris et manette                                  *
    00095      **************************************************************/
    00096     /* Permet de définir le temps minimum autorisé. */
    00097     void USGE_CAPI_delayKeyboard(unsigned int keyNum, unsigned long int first, unsigned long int next);
    00098     /* Retourne l'état d'une touche du clavier. */
    00099     int USGE_CAPI_readKeyboard(unsigned int keyNum);
    00100     /* Retourne l'état d'un bouton de la souris. */
    00101     int USGE_CAPI_readMouse(unsigned int keyNum);
    00102     /* Retourne l'état de la molette de la souris. */
    00103     int USGE_CAPI_wheelMouse();
    00104     /* Remet à zéro l'état de la molette de la souris. */
    00105     void USGE_CAPI_resetWheelMouse();
    00106     /* Retourne l'état d'une touche de la souris. */
    00107     void USGE_CAPI_positionMouse(long int *x, long int *y);
    00108     /* Positionne le curseur de la souris. */
    00109     void USGE_CAPI_moveMouse(long int x, long int y);
    00110     /* Permet de définir le temps minimum autorisé. */
    00111     void USGE_CAPI_delayMouse(unsigned int clickNum, unsigned long int first, unsigned long int next);
    00112     /* Définition du contrôleur de jeu à utiliser (Win32 uniquement). */
    00113     void USGE_CAPI_selectPad(unsigned int choice);
    00114     /* Retourne l'état d'une direction du POV (Point Of View). */
    00115     int USGE_CAPI_povPad(unsigned int povDir);
    00116     /* Permet de définir le temps minimum autorisé. */
    00117     void USGE_CAPI_delayPad(unsigned int btnNum, unsigned long int first, unsigned long int next);
    00118     /* Retourne l'état d'un bouton de la manette choisie. */
    00119     int USGE_CAPI_readPad(unsigned int btnID);
    00120
    00121 #ifdef __cplusplus
    00122 }
    00123 #endif
    00124
    00125 #endif