console.h (3109B)
1 #ifndef INTERFACE_UTILISATEUR_CONSOLE_CONSOLE_H 2 #define INTERFACE_UTILISATEUR_CONSOLE_CONSOLE_H 3 4 #include <types.h> 5 6 typedef struct CouleurComposantes { 7 uint8 bleu; 8 uint8 vert; 9 uint8 rouge; 10 uint8 alpha; 11 } CouleurComposantes; 12 13 typedef uint32 Couleur; 14 15 typedef struct CouleurAvAr { 16 Couleur av; 17 Couleur ar; 18 } CouleurAvAr; 19 20 typedef struct Position { 21 uint32 x; 22 uint32 y; 23 } Position; 24 25 typedef void (*FonctionAffichage) (char caractere, uint32 couleurAv, uint32 couleurAr, uint32 x, uint32 y); 26 27 typedef struct Console { 28 uint32 x; 29 uint32 y; 30 uint32 largeur; 31 uint32 hauteur; 32 FonctionAffichage fonctionAffichage; 33 } Console; 34 35 typedef struct EtatConsole { 36 Console* consoleActive; 37 uint32 x; 38 uint32 y; 39 uint32 couleurAv; 40 uint32 couleurAr; 41 bool consolePrete; 42 } EtatConsole; 43 44 45 Console* definirConsoleActive(Console* console); 46 47 CouleurAvAr getConsoleCouleur(); 48 CouleurAvAr consoleCouleur(Couleur couleurAv, Couleur couleurAr); 49 50 Position getConsolePosition(); 51 Position consolePosition(uint32 x, uint32 y); 52 void consolePositionAvancerX(); 53 void consolePositionAvancerY(); 54 55 void afficherCaractereCouleurPositionBrut(char caractere, uint32 couleurAv, uint32 couleurAr, uint32 x, uint32 y); 56 void afficherCaractereCouleurPosition(char caractere, uint32 couleurAv, uint32 couleurAr, uint32 x, uint32 y); 57 void afficherCaractere(char caractere); 58 void afficherCaractereBrut(char caractere); 59 void afficherCaractereCouleur(char caractere, uint32 couleurAv, uint32 couleurAr); 60 void afficherCaractereCouleurBrut(char caractere, uint32 couleurAv, uint32 couleurAr); 61 void afficherCaracterePosition(char caractere, uint32 x, uint32 y); 62 void afficherCaracterePositionBrut(char caractere, uint32 x, uint32 y); 63 64 void effacerConsole(); 65 void afficherChaineZ(char* chaine); 66 void afficherChaine(char* chaine, int longueur); 67 void afficherEntierVirguleEnDecimal(uint32 entier, int32 nbDecimales); 68 void afficherEntierEnDecimal(uint32 entier); 69 void afficherEntierEnHexa(uint32 entier); 70 void afficherEntierEnBinaire(uint32 entier); 71 void afficherTableCaracteres(); 72 73 bool consolePrete(); 74 75 #define STR_Ccedil "\200" 76 #define STR_uuml "\201" 77 #define STR_eacute "\202" 78 #define STR_acirc "\203" 79 #define STR_auml "\204" 80 #define STR_agrave "\205" 81 #define STR_aring "\206" 82 #define STR_ccedil "\207" 83 #define STR_ecirc "\210" 84 #define STR_euml "\211" 85 #define STR_egrave "\212" 86 #define STR_iuml "\213" 87 #define STR_icirc "\214" 88 #define STR_igrave "\215" 89 #define STR_Auml "\216" 90 #define STR_Aring "\217" 91 #define STR_Eacute "\220" 92 #define STR_aelig "\221" 93 #define STR_AElig "\222" 94 #define STR_ocirc "\223" 95 #define STR_ouml "\224" 96 #define STR_ograve "\225" 97 #define STR_ucirc "\226" 98 #define STR_ugrave "\227" 99 #define STR_yuml "\230" 100 #define STR_Ouml "\231" 101 #define STR_Uuml "\232" 102 #define STR_cent "\233" 103 #define STR_pound "\234" 104 #define STR_yen "\235" 105 #define STR_xxxxxxxx "\236" 106 #define STR_fonction "\237" 107 #define STR_aacute "\240" 108 #define STR_iacute "\241" 109 #define STR_oacute "\242" 110 #define STR_uacute "\243" 111 #define STR_ntilde "\244" 112 #define STR_Ntilde "\245" 113 #define STR_ordm "\246" 114 #define STR_degr "\247" 115 116 #endif