From 343ab01ff1ac88f53f3d0f12a5e3e8bf910e86e3 Mon Sep 17 00:00:00 2001 From: Henri Montjoie <henri.montjoie@insa-rennes.fr> Date: Sun, 24 Apr 2016 20:55:32 +0200 Subject: [PATCH] commentaires doxygen du controleur SDL --- src/SDL.c | 6 +++ src/competence.h | 4 +- src/controleurSDL.c | 97 +++++++++++++++++++++++++++++++++++++++------ 3 files changed, 92 insertions(+), 15 deletions(-) diff --git a/src/SDL.c b/src/SDL.c index 0fe68fb..08bb221 100644 --- a/src/SDL.c +++ b/src/SDL.c @@ -15,6 +15,12 @@ * \brief Fichier contenant le code des fonctions liees à l'affichage par la SDL. */ +/*! + * \fn int main_SDL(char* Map) + * \brief fonction qui gère l'affichage + * + * \param la carte au format texte (une lettre = une case) + */ int main_SDL(char* Map) { diff --git a/src/competence.h b/src/competence.h index 0ede77e..3f811c9 100644 --- a/src/competence.h +++ b/src/competence.h @@ -3,8 +3,8 @@ * \brief Fichier contenant les signatures des fonctions liees a la structure competence. */ -#ifndef DEPLACEMENTS_H_INCLUDED -#define DEPLACEMENTS_H_INCLUDED +#ifndef COMPETENCE_H_INCLUDED +#define COMPETENCE_H_INCLUDED /* Fonctions */ diff --git a/src/controleurSDL.c b/src/controleurSDL.c index 5b1a80f..513c422 100644 --- a/src/controleurSDL.c +++ b/src/controleurSDL.c @@ -20,7 +20,12 @@ Carte Carte_actuelle; Personnage ListePersos[NB_PERSO]; int perso_actuel=0; - +/*! + * \fn void init_controleur(SDL_Rect Position_Case[]) + * \brief fonction du controleur appellée par l'affichage et qui initialise le moteur du jeu (création de la carte et des personnages) + * + * \param les coordonnées de toutes les cases + */ void init_controleur(SDL_Rect Position_Case[]) { int i; @@ -32,11 +37,24 @@ void init_controleur(SDL_Rect Position_Case[]) init_personnage(&ListePersos[i],NULL,&Carte_actuelle[i]); } +/*! + * \fn int x_case_cliquee(int x_pixel, int y_pixel) + * \brief La fonction retourne la colonne d'une case à partir de sa position en pixels + * + * \param les coordonnées x et y de la case en pixels + * \return la colonne de la case + */ int x_case_cliquee(int x_pixel, int y_pixel) { return x_pixel/LARGEUR_CASE; } - +/*! + * \fn int y_case_cliquee(int x_pixel, int y_pixel) + * \brief La fonction retourne la ligne d'une case à partir de sa position en pixels + * + * \param les coordonnées x et y de la case en pixels + * \return la ligne de la case + */ int y_case_cliquee(int x_pixel, int y_pixel) { int i, x_case, y_case; @@ -51,7 +69,13 @@ int y_case_cliquee(int x_pixel, int y_pixel) } return y_case; } - +/*! + * \fn Case * trouverCase(Carte c, int x, int y) + * \brief La fonction retourne un pointeur vers la case de coordonnées x,y + * + * \param les coordonnées x et y d'une case (pas en pixels mais bien en colonne et ligne), ainsi que la carte utilisée + * \return un pointeur vers cette case + */ Case * trouverCase(Carte c, int x, int y) { if((x<0)||(x>=LARGEUR_CARTE)){ @@ -64,18 +88,29 @@ Case * trouverCase(Carte c, int x, int y) return &c[(y*LARGEUR_CARTE)+x]; } } - -persosuivant(){ +/*! + * \fn void persosuivant() + * \brief La fonction permet de selectionner le personnage suivant + */ +void persosuivant(){ if(perso_actuel<NB_PERSO-1) perso_actuel++; else perso_actuel=0; } - +/*! + * \fn int persoactuel() + * \brief La fonction retourne le numéro du personnage actuellement controlé + */ int persoactuel(){ return perso_actuel; } - +/*! + * \fn void deplacement_personnage(int x, int y)) + * \brief Cette fonction du controleur appelle la fonction du moteur permettant de déplacer le personnage selectionné + * + * \param les coordonnées (en pixels) de l'endroit ou l'utilisateur a cliqué + */ void deplacement_personnage(int x, int y) { if(x<LARGEUR_CARTE*LARGEUR_CASE&&y<HAUTEUR_CARTE*HAUTEUR_CASE) @@ -85,25 +120,49 @@ void deplacement_personnage(int x, int y) deplacement_unitaire(perso, case_cliquee,HAUTEUR_CASE,LARGEUR_CASE); } } - +/*! + * \fn Case* get_case_perso(int num) + * \brief donne la case sur laquelle est située un personnage + * + * \param le numéro d'un personnage + * \return un pointeur vers la case du personnage + */ Case* get_case_perso(int num) { Personnage* perso = &ListePersos[num]; return getPosition(perso); } - +/*! + * \fn int get_position_perso_x(int num) + * \brief donne la coordonnée x en pixels d'un personnage + * + * \param le numéro d'un personnage + * \return la coordonnée x en pixels du personnage + */ int get_position_perso_x(int num) { Case* case_perso = get_case_perso(num); return get_x(case_perso); } - +/*! + * \fn int get_position_perso_y(int num) + * \brief donne la coordonnée y en pixels d'un personnage + * + * \param le numéro d'un personnage + * \return la coordonnée y en pixels du personnage + */ int get_position_perso_y(int num) { Case* case_perso = get_case_perso(num); return get_y(case_perso); } - +/*! + * \fn Case* deplacement_brillance(int x,int y) + * \brief La fonction retourne un pointeur vers la case de coordonnées x,y + * + * \param les coordonnées x et y d'une case (pas en pixels mais bien en colonne et ligne), ainsi que la carte utilisée + * \return un pointeur vers cette case + */ Case* deplacement_brillance(int x,int y) { if(x<LARGEUR_CARTE*LARGEUR_CASE&&y<HAUTEUR_CARTE*HAUTEUR_CASE) @@ -113,11 +172,23 @@ Case* deplacement_brillance(int x,int y) return NULL; } - +/*! + * \fn int get_position_case_y(Case * Case) + * \brief retourne la coordonnée y d'une case + * + * \param un pointeur vers une case + * \return la coordonnée y de la case + */ int get_position_case_y(Case * Case){ return get_y(Case); } - +/*! + * \fn int get_position_case_x(Case * Case) + * \brief retourne la coordonnée x d'une case + * + * \param un pointeur vers une case + * \return la coordonnée x de la case + */ int get_position_case_x(Case * Case) { return get_x(Case); -- GitLab