/*---------------------------------------------------------------------------*/
/* TYPES */

/* les couleurs */
#define NBCOUL 10
typedef enum {blanc, noir, gris, rouge, orange, jaune, vert, bleu, indigo, violet} utv_gd_couleur ;

/*---------------------------------------------------------------------------*/
/* FONCTIONS */

/* initialisation du systeme graphique, allocation de la table des couleurs */
/* cf. le type enumere utv_gd_couleur ci-dessus */
/* parametres : pw = largeur de l'image */
/*              ph = hauteur de l'image */
/*              pt = taille des cases (1 = pixel) */
void utv_gd_initialisation(int pw, int ph, int pt);

/* affiche l'image suivante */
void utv_gd_image_suivante(void);

/* ajoute une couleur codee RVB a la volee a la palette des couleurs et */
/* retourne son indice */
int utv_gd_ajouter_couleur(int r, int v, int b);

/* cree une case de couleur pc, de taille pt x pt, en (px, py) */
/* le couple de coordonnees donne la position d'une CASE (le pas est de 1) */
void utv_gd_case_couleur(int px, int py, int pc);

/* retourne la couleur du centre d'une case, de taille pt x pt, en (px, py) */
int utv_gd_case_quelle_couleur(int px, int py);

/* ajoute un objet graphique decrit dans un fichier de nom pnom */
void utv_gd_ajouter_objet(int i, const char* pnom);

/* creer un objet graphique ps, de taille pt x pt en (px, py) */
void utv_gd_case_objet(int px, int py, int ps);

/* retourne la couleur d'un pixel */
int utv_gd_quelle_couleur(int px, int py);

/* avant de quitter le programme */
void utv_gd_quitter(void);
