Sources motifs

This commit is contained in:
Mika 2014-03-29 17:47:13 +01:00
parent 2443f117c7
commit a698200f04
4 changed files with 56 additions and 1 deletions

View File

@ -1,4 +1,4 @@
samples.h samples.h
— ajouterSample — ajouterSample
— supprimerSample — supprimerSample
— previsualiserSample — previsualiserSample
@ -21,6 +21,8 @@ instruments.h
motifs.h motifs.h
— ajouterMotif — ajouterMotif
— supprimerMotif — supprimerMotif
— ajouterNote
— supprimerNote
— definirRefMotif — definirRefMotif
— definirNbTemps — definirNbTemps
— definirCommentaire — definirCommentaire

View File

23
sources/motifs/motifs.c Normal file
View File

@ -0,0 +1,23 @@
#include "motifs.h"
void ajouterMotif(int nbrPortees, int nbrTmp){
Motif m = malloc(nbrPortees*sizeof(Portee));
int i;
for (i=0; i<nbrPortees; i++) {
m[i] = malloc(nbrTmp*sizeof(Note));
}
Liste* l = malloc(sizeof(Liste));
l->suivant = tab;
tab = l;
}
void supprimerMotif(Liste** cellule, int nbrPortees){
int i;
for (i=0; i<nbrPortees; i++) {
free((*cellule)->motif[i]);
}
free((*cellule)->motif);
Liste* aux = (*cellule)->suivant;
free((*cellule));
*cellule = aux;
}

30
sources/motifs/motifs.h Normal file
View File

@ -0,0 +1,30 @@
#include <stdlib.h>
#include <stdio.h>
#include "instruments.h"
#include "effets.h"
#define NBRPORT 4
#define NBRMOTIF 16
typedef struct _note{
int note;
int octave;
int intrument;
int volume;
int effet;
} Note;
typedef Note* Portee;
typedef Portee* Motif;
typedef struct _liste{
Motif motif;
struct _liste* suivant;
} Liste;
Liste* tab;
void ajouterMotif(int nbrPortees, int nbrTmp);
void supprimerMotif(Liste** cellule, int nbrPortees); // cellule correspond à l'adresse de l'élément de la liste (avec &)