Tout Structures de données Fichiers Fonctions Pages
motifs.h
Aller à la documentation de ce fichier.
#ifndef _motif_h
#define _motif_h
#include <stdlib.h>
#include <stdio.h>
#define DEFNBRTMP 16
typedef struct _note{
int note;
int octave;
int instrument;
int volume;
int effet;
} Note;
typedef Note Portee[];
typedef Portee* Mesure[];
typedef struct _motif{
char nom[10];
int nbrTmp;
Mesure* motif;
struct _motif* suivant;
} Motif;
int getIdMotif(Motif* m);
void ajouterMotif(Motif** pliste, int nbrTmp, int nbrPortees);
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, 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 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);
// Maintenant, voici les getters (qui intéressent entre autres Majora)
int getNote(Motif* m, int portee, int tmp);
int getOctave(Motif* m, int portee, int tmp);
int getInstrument(Motif* m, int portee, int tmp);
int getVolume(Motif* m, int portee, int tmp);
int getEffet(Motif* m, int portee, int tmp);
#endif
supprimerNote
void supprimerNote(Motif *m, int portee, int tmp)
Definition: motifs.c:73
getVolume
int getVolume(Motif *m, int portee, int tmp)
Definition: motifs.c:89
ajouterMotif
void ajouterMotif(Motif **pliste, int nbrTmp, int nbrPortees)
Definition: motifs.c:22
_motif
Definition: motifs.h:31
getIdMotif
int getIdMotif(Motif *m)
Definition: motifs.c:14
getOctave
int getOctave(Motif *m, int portee, int tmp)
Definition: motifs.c:81
_note
Definition: motifs.h:19
getNote
int getNote(Motif *m, int portee, int tmp)
Definition: motifs.c:77
definirOctave
void definirOctave(Motif *m, int portee, int tmp, int octave)
Definition: motifs.c:57
definirVolume
void definirVolume(Motif *m, int portee, int tmp, int volume)
Definition: motifs.c:65
getEffet
int getEffet(Motif *m, int portee, int tmp)
Definition: motifs.c:93
definirNomMotif
void definirNomMotif(Motif *m, char *nom)
Definition: motifs.c:38
supprimerMotif
void supprimerMotif(Motif **cellule, int nbrPortees)
Definition: motifs.c:42
definirEffet
void definirEffet(Motif *m, int portee, int tmp, int effet)
Definition: motifs.c:69
definirNote
void definirNote(Motif *m, int portee, int tmp, int note)
Definition: motifs.c:53
getInstrument
int getInstrument(Motif *m, int portee, int tmp)
Definition: motifs.c:85
definirInstrument
void definirInstrument(Motif *m, int portee, int tmp, int intrument)
Definition: motifs.c:61