#ifndef _motif_h #define _motif_h #include #include #define DEFNBRTMP 16 typedef struct _note{ int note; int octave; int instrument; int volume; int effet; } Note; typedef Note** Portee; typedef struct _motif{ char* nom; int nbrTmp; Portee* motif; struct _motif* suivant; } Motif; Motif* liste = NULL; int nbrPortees = 4; int getIdMotif(Motif* m); void ajouterMotif(); 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. void supprimerMotif(Motif** cellule); // cellule correspond à l'adresse de l'élément de la liste (avec &) void definirNote(Motif* m, int portee, int tmp, int note); void definirOctave(Motif* m, int portee, int tmp, int octave); void definirInstrument(Motif* m, int portee, int tmp, int intrument); void definirVolume(Motif* m, int portee, int tmp, int volume); void definirEffet(Motif* m, int portee, int tmp, int effet); void supprimerNote(Motif* m, int portee, int tmp); #endif