Non-recours à des variables globales dans motifs

This commit is contained in:
Raspbeguy 2014-04-03 12:16:16 +02:00
parent 780219bf57
commit abbc46ffbd
4 changed files with 21 additions and 12 deletions

13
sources/main.c Normal file
View File

@ -0,0 +1,13 @@
#include <stdio.h>
#include <stdlib.h>
#include "motifs/motifs.h"
#include "melodie/melodie.h"
#define DEF_NBR_TMP 16
int main(){
Motif* liste = NULL;
int nbrPortees = 4;
return EXIT_SUCCESS;
}

View File

@ -4,7 +4,7 @@ void afficherListeMelodie(){
// TODO // TODO
} }
void affocherListeMotifs(){ void afficherListeMotifs(){
// TODO // TODO
} }
@ -33,4 +33,4 @@ void supprimerMotifVirtuel(){
for (int i = courant; i < taille; i--) { for (int i = courant; i < taille; i--) {
melodie[i] = melodie[i+1]; melodie[i] = melodie[i+1];
} }
} }

View File

@ -9,7 +9,7 @@ int getIdMotif(Motif* m){
} }
} }
void ajouterMotif(){ void ajouterMotif(Motif* liste, int nbrTmp, int nbrPortees){
Motif* m = malloc(sizeof(Motif)); Motif* m = malloc(sizeof(Motif));
m->nbrTmp = DEFNBRTMP; m->nbrTmp = DEFNBRTMP;
m->suivant = liste; m->suivant = liste;
@ -28,7 +28,7 @@ void definirNomMotif(Motif* m, char* nom){
m->nom = nom; m->nom = nom;
} }
void supprimerMotif(Motif** cellule){ void supprimerMotif(Motif** cellule, int nbrPortees){
int i; int i;
for (i=0; i<nbrPortees; i++) { for (i=0; i<nbrPortees; i++) {
free((*cellule)->motif[i]); free((*cellule)->motif[i]);
@ -61,4 +61,4 @@ void definirEffet(Motif* m, int portee, int tmp, int effet){
void supprimerNote(Motif* m, int portee, int tmp){ void supprimerNote(Motif* m, int portee, int tmp){
m->motif[portee][tmp]->note = 0; m->motif[portee][tmp]->note = 0;
} }

View File

@ -23,13 +23,9 @@ typedef struct _motif{
struct _motif* suivant; struct _motif* suivant;
} Motif; } Motif;
Motif* liste = NULL;
int nbrPortees = 4;
int getIdMotif(Motif* m); int getIdMotif(Motif* m);
void ajouterMotif(); void ajouterMotif(Motif* liste, int nbrTmp, int nbrPortees);
void definirNomMotif(Motif* m, char* nom); void definirNomMotif(Motif* m, char* nom);
@ -37,7 +33,7 @@ void definirNomMotif(Motif* m, char* nom);
// C'est chiant de changer le nomre de temps en cours de route, // C'est chiant de changer le nomre de temps en cours de route,
// donc on le fera après le proto. // donc on le fera après le proto.
void supprimerMotif(Motif** cellule); // cellule correspond à l'adresse de l'élément de la liste (avec &) void supprimerMotif(Motif** cellule, int nbrPortees); // cellule correspond à l'adresse de l'élément de la liste (avec &)
void definirNote(Motif* m, int portee, int tmp, int note); void definirNote(Motif* m, int portee, int tmp, int note);
@ -51,4 +47,4 @@ void definirEffet(Motif* m, int portee, int tmp, int effet);
void supprimerNote(Motif* m, int portee, int tmp); void supprimerNote(Motif* m, int portee, int tmp);
#endif #endif