From 46c368bcced292e602b633a1c3e8f10ec84d42d7 Mon Sep 17 00:00:00 2001 From: Mika Date: Thu, 15 May 2014 03:44:03 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9but=20du=20travail=20sur=20la=20doc=20Do?= =?UTF-8?q?xygen.=20Je=20ne=20pourrais=20aller=20plus=20loin=20que=20lorsq?= =?UTF-8?q?u'on=20aura=20toutes=20les=20fonctions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sources/lecture/lecture.c | 10 ++++ sources/lecture/lecture.h | 18 ++++++- sources/main.c | 20 ++++++++ sources/motifs/motifs.c | 10 ++++ sources/motifs/motifs.h | 102 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 159 insertions(+), 1 deletion(-) diff --git a/sources/lecture/lecture.c b/sources/lecture/lecture.c index 4082906..cc04d00 100644 --- a/sources/lecture/lecture.c +++ b/sources/lecture/lecture.c @@ -1,3 +1,13 @@ +/** + * @file lecture.c + * + * Ce module implémente les fonctions du fichier lecture.h + * + * @version 1 + * @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis + * @date Mai 2014 +*/ + #include "lecture.h" void lireTick (FMOD_SYSTEM* system, Motif* m, int tmp, FMOD_SOUND* sample[], FMOD_CHANNEL* chan[], int nbrPortees, int tempo) { // On va lire les ticks (plus petite division temporelle de la playlist) de haut en bas diff --git a/sources/lecture/lecture.h b/sources/lecture/lecture.h index 8a92009..ceffd57 100644 --- a/sources/lecture/lecture.h +++ b/sources/lecture/lecture.h @@ -1,7 +1,17 @@ +/** + * @file lecture.h + * + * Lecture de la mélodie + * + * @version 1 + * @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis + * @date Mai 2014 +*/ + + #ifndef _LECTURE_H #define _LECTURE_H - #include "../melodie/melodie.h" // #include "../instruments/instrument.h" // #include @@ -13,6 +23,12 @@ #define NBR_MS +/** + Permet la lecture d'un motif + @param[in] nbrChaines : nombre de chaines + @param[in] tempo : nombre de tempo + @param[in] melodie[] : motif lu +*/ void lecture(int nbrChaines, int tempo, Motif* melodie[]); #endif diff --git a/sources/main.c b/sources/main.c index ed1ff2a..3039e98 100644 --- a/sources/main.c +++ b/sources/main.c @@ -1,3 +1,23 @@ +/** + * \mainpage CSC3502 : PonyTracker + * + * Les fonctionnalités de cette application sont les suivantes : + * + * + * @file main.c + * + * Programme principal du Ponytracker + * + * @version 1.1 + * @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis + * @date Mai 2014 +*/ + #include #include #include diff --git a/sources/motifs/motifs.c b/sources/motifs/motifs.c index d67c87e..01b0f92 100644 --- a/sources/motifs/motifs.c +++ b/sources/motifs/motifs.c @@ -1,3 +1,13 @@ +/** + * @file motifs.c + * + * Ce module implémente les fonctions du fichier motifs.h + * + * @version 1 + * @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis + * @date Mai 2014 +*/ + #include #include "motifs.h" diff --git a/sources/motifs/motifs.h b/sources/motifs/motifs.h index 6f13db4..2240d21 100644 --- a/sources/motifs/motifs.h +++ b/sources/motifs/motifs.h @@ -1,3 +1,13 @@ +/** + * @file motifs.h + * + * Gestion des motifs + * + * @version 1 + * @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis + * @date Mai 2014 +*/ + #ifndef _motif_h #define _motif_h @@ -25,40 +35,132 @@ typedef struct _motif{ struct _motif* suivant; } Motif; +/** + Permet d'obtenir le numéro d'un motif + @param[in] m : Mmtif dont on veut déterminer le numéro + @return Le numéro du motif +*/ int getIdMotif(Motif* m); +/** + Permet d'ajouter un nouveau motif + @param[out] pliste : liste de motifs + @param[in] nbrTmp : nombre de temps que doit contenir le motif + @param[in] nbrPortees : nombre de portées que doit contenir le motif +*/ void ajouterMotif(Motif** pliste, int nbrTmp, int nbrPortees); +/** + Permet de nommer un motif + @param[out] m : motif que l'on veut nommer + @param[in] nom : nom que l'on donne au motif + */ void definirNomMotif(Motif* m, char* nom); // void definirNbrTmp(Motif* m, int nbrTmp); // C'est chiant de changer le nomre de temps en cours de route, // donc on le fera après le proto. +/** + Permet de supprimer un motif + @param[out] cellule : adresse de l'élément de la liste + @param[in] nbrPortees : nombre de portées que l'on supprime +*/ void supprimerMotif(Motif** cellule, int nbrPortees); // cellule correspond à l'adresse de l'élément de la liste (avec &) +/** + Permet de définir une note + param[out] m : motif dans lequel on ajoute la note + param[in] portee : portée du motif dans laquelle on ajoute la note + param[in] tmp : temps du motif dans lequel on ajoute la note + param[in] note : note que l'on ajoute +*/ void definirNote(Motif* m, int portee, int tmp, int note); +/** + Permet de définir une octave + param[out] m : motif dans lequel on ajoute l'octave + param[in] portee : portée du motif dans laquelle on ajoute l'octave + param[in] tmp : temps du motif dans lequel on ajoute l'octave + param[in] octave : octave que l'on ajoute à la note +*/ void definirOctave(Motif* m, int portee, int tmp, int octave); +/** + Permet de définir l'instrument jouant une note + param[out] m : motif dans lequel on utilise cet instrument + param[in] portee : portée du motif dans laquelle on utilise cet instrument + param[in] tmp : temps du motif dans lequel on utilise cet instrument + param[in] instrument : instrument que l'on utilise +*/ void definirInstrument(Motif* m, int portee, int tmp, int intrument); +/** + Permet de définir le volume d'une note + param[out] m : motif dans lequel on modifie le volume + param[in] portee : portée du motif dans laquelle on modifie le volume + param[in] tmp : temps du motif dans lequel on modifie le volume + param[in] volume : volume de la note +*/ void definirVolume(Motif* m, int portee, int tmp, int volume); +/** + Permet de définir l'effet donné à une note + param[out] m : motif dans lequel on ajoute l'effet + param[in] portee : portée du motif dans laquelle on ajoute l'effet + param[in] tmp : temps du motif dans lequel on ajoute l'effet + param[in] effet : effet donné à la note +*/ void definirEffet(Motif* m, int portee, int tmp, int effet); +/** + Permet de supprimer une note + param[out] m : motif dans lequel on supprime la note + param[in] portee : portée du motif dans laquelle on supprime la note + param[in] tmp : temps du motif dans lequel on supprime la note +*/ void supprimerNote(Motif* m, int portee, int tmp); // Maintenant, voici les getters (qui intéressent entre autres Majora) +/** + Permet d'afficher une note + param[out] m : motif dans lequel on affiche la note + param[in] portee : portée du motif dans laquelle on affiche la note + param[in] tmp : temps du motif dans lequel on affiche la note +*/ int getNote(Motif* m, int portee, int tmp); +/** + Permet d'afficher une octave + param[out] m : motif dans lequel on affiche l'octave + param[in] portee : portée du motif dans laquelle on affiche l'octave + param[in] tmp : temps du motif dans lequel on affiche l'octave +*/ int getOctave(Motif* m, int portee, int tmp); +/** + Permet d'afficher un instrument utilisé + param[out] m : motif dans lequel on affiche l'instrument utilisé + param[in] portee : portée du motif dans laquelle on affiche l'instrument utilisé + param[in] tmp : temps du motif dans lequel on affiche l'instrument utilisé +*/ int getInstrument(Motif* m, int portee, int tmp); +/** + Permet d'afficher une volume de note + param[out] m : motif dans lequel on affiche le volume de la note + param[in] portee : portée du motif dans laquelle on affiche le volume de la note + param[in] tmp : temps du motif dans lequel on affiche le volume de la note +*/ int getVolume(Motif* m, int portee, int tmp); +/** + Permet d'afficher un effet donné + param[out] m : motif dans lequel on affiche l'effet donné + param[in] portee : portée du motif dans laquelle on affiche l'effet donné + param[in] tmp : temps du motif dans lequel on affiche l'effet donné +*/ int getEffet(Motif* m, int portee, int tmp); #endif